def main(): pass if __name__ == '__main__': main() import codecs import datetime import os import sys def ikousyori(zenbu): #日時取得 iti = zenbu.find('dc:date="') nitiji = zenbu[iti+9:iti+34] #タイトル取得 iti = zenbu.find('dc:title="') taipra = zenbu[iti+10:iti+200] itiend = taipra.find('"') taitoru = taipra[0:itiend] #カテゴリ取得 iti = zenbu.find('dc:subject="') katepra = zenbu[iti+12:iti+200] itiend = katepra.find('"') kategori = katepra[0:itiend] #本文取得 #
本文 だと一部ダメ。 #後 本文  でやる。 iti = zenbu.find('') itiend = zenbu.find('') honbun = zenbu[iti+5:itiend] #br修正。if文は向こうで書いてしまう honbun = blockblogbr(nitiji,honbun) #タグ変換。<>を<> honbun = honbun.replace('<', '<') honbun = honbun.replace('>', '>') #インポート用に整形して返す。 return seikei(nitiji, taitoru, kategori, honbun) #整形するだけ。 def seikei(nitiji, taitoru, kategori, honbun): kansei = ("tag:blogger.com,1999:blog-3947571712250077482.post-2611438307350136451" + nitiji + "" + nitiji + "" + "" + taitoru + "" + honbun + "真性引き篭りhankakueisuuhttp://www.blogger.com/profile/04021447756551233174sinseihikikomori.hankakueisuu@gmail.com" ) kansei = rinkusakujyo(kansei) return kansei #urlが文字化けしてインポート出来ないので系列削除。 def rinkusakujyo(kansei): #<a href 〜削除〜 </a> #
"を探して"
"に変換。 honbun = honbun.replace('

','
') #2."

"を"
"に変換。 honbun = honbun.replace('

','
') return honbun #divの閉じがおかしいのでdiv全削除+sblog移転時に増殖した改行修正。 def divdel(kanseihin): #なるべく改行修正。 kanseihin = kanseihin.replace("""<div class="entrybody_more"><br /> <br /> </div>""", "") kanseihin = kanseihin.replace("""<div class="<div class="entrybody_more">""", "") kanseihin = kanseihin.replace("""<div class="entrybody"><br />">""", "") kanseihin = kanseihin.replace("""<div class="entrybody_more"><br />""", "") kanseihin = kanseihin.replace("""<div style="text-align:center">""", "") kanseihin = kanseihin.replace("""<div class="entrybody">""", "") kanseihin = kanseihin.replace("""<div class="</div>""", "") kanseihin = kanseihin.replace("""<div class="text">""", "") kanseihin = kanseihin.replace("""</div><br />""", "") kanseihin = kanseihin.replace("""<div class="ie5">""", "") kanseihin = kanseihin.replace("""</div>""", "") #冒頭の

による無駄な改行削る。 kanseihin = kanseihin.replace("""<br /> <p>""", "") #文末の

による無駄な改行削る。 kanseihin = kanseihin.replace("""<p>""", "") #----その他、エラーを発見次第修正する。---- #sblog移行時に
タグが壊れて""", "") # kanseihin = kanseihin.replace("""""", "") return kanseihin #ゴリゴリやる。 #何故か71エントリしかインポート出来ないので53エントリ*29回で分割インポート。 #ファイルリスト作る。 #フォルダ。 foruda = "C:/namiall/" errorfile = "自動処理失敗したファイル一覧。\n" flist = os.listdir(foruda) for cnt in range(29): #ヘッダーロード。 #impxml = codecs.open("C:/impxml_header.txt", "r", "utf-8").read() impxml = open("C:/impxml_header.txt", "r").read() #メインループ for i, item in enumerate(flist[cnt*53:cnt*53+53]): #コメント欄の中国語?でUnicodeDecodeErrorが出る。 #例外処理で発見してエラー出たのは追って手動で処理。 try: impxml = impxml + ikousyori(open(foruda+flist[cnt*53+i], "r").read()) except UnicodeDecodeError: errorfile = errorfile + item + "\n" #フッター追加。 impxml = impxml + "" #div削除 impxml = divdel(impxml) #utf-8でファイルに書き込み。 f = codecs.open("C:/kanseihin" + str(cnt) + ".xml", "w", "utf-8") f.write(impxml) f.close() #ユニコードデコードエラーが出たファイルを取得。 #8ファイルなので人力インポートで対処する。 f = open("C:/error2.txt", "w") f.write(errorfile) f.close() ######## #ゴミ箱 #itijizenbu = open("C:/naminori/sinseihikikomori.sblo.jp/", "r").read() #itijizenbu = open("C:/16373866.html", "r").read() #itijizenbu = open("C:/namitest/"+fff[2], "r").read() #ikousyori(itijizenbu) #print(ikousyori(itijizenbu))