はてなブログにバックアップとリストア(エキスポート)する機能があります
問題は、この機能を使うと編集モードがHTML(見たまま)になってしまいます
HTMLになると無駄に
<p>タグ
などが入ってしまします
私は「はてな記法」になれてしまっているため
HTMLモードは編集の効率がさがってしまいます
なのではてな記法とmarkdown記法に対応してバックアップとリストアツールを作った
github.com
もし使う場合はMITライセンスなのでご注意して使ってください
手順
1・バックアップするブログのatompubのURLを取得する
2・検証用のブログを作成する
(proを使っている人ならできると思う)
3・検証用のブログのatompubのURLを取得する
4・ユーザーとパスワードを取得する
atompubのURLは以下のページを参考
5・node.jsをインストールする
https://nodejs.org/ja/
よりv8.6.0をインストールする
6・ツールをダウンロードする
git clone https://github.com/masalib/hatena_blog_tool.git hatena_blog_tool cd hatena_blog_tool npm install wsse async cheerio cheerio-httpcli --save
gitが入っていない人は
https://github.com/masalib/hatena_blog_tool.gitにアクセスして
ダウンロードしてください
7・展開したフォルダに設定ファイルをつくる
config.json
{ "HATENA_SITE_ID": "hatena_account_ib", "HATENA_SITE_PW": "atom password", "HATENA_SITE_SOURCE_URL": "https://blog.hatena.ne.jp/XXhatena_account_ibXX/XXbackup_hatena_blog_domainXX/atom", "HATENA_SITE_DIST_URL": "https://blog.hatena.ne.jp/XXhatena_account_ibXX/XXrestore_hatena_blog_domainXX/atom" }
HATENA_SITE_IDとHATENA_SITE_PWは作業4で取得したユーザーIDです
HATENA_SITE_SOURCE_URL(元ブログ)は作業1で取得したatompubのURLです
HATENA_SITE_DIST_URL(移行先ブログ)は作業3で取得したatompubのURLです
8・実行する
はまった事
サマリの部分にタグがはいると取り込めなかった
ダウンロードしたデータにsummaryタグがあるのですが
この部分に「"」が閉じていない部分があると
取り込めない
非同期の処理になれていない
node.jsは基本的には非同期の処理なのですが
同期処理のプログラムになれているため、非同期でのnode.jsに苦労した
非同期のnode.jsを同期させて実行させる・・・
う~ん・・・違う言語でいけばよかったかも
今後
SSLに対応して記述やエラーハンドリングができていない部分があるので
修正する
JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック
- 作者: クジラ飛行机
- 出版社/メーカー: ソシム
- 発売日: 2015/08/31
- メディア: 単行本
- この商品を含むブログ (2件) を見る
はてなブログにバックアップとリストア(エキスポート)する機能があります
問題は、この機能を使うと編集モードがHTML(見たまま)になってしまいます
HTMLになると無駄に
タグ
などが入ってしまします
私は「はてな記法」になれてしまっているため
HTMLモードは編集の効率がさがってしまいます
なのではてな記法とmarkdown記法に対応してバックアップとリストアツールを作った
github.com
もし使う場合はMITライセンスなのでご注意して使ってください
手順
1・バックアップするブログのatompubのURLを取得する
2・検証用のブログを作成する
(proを使っている人ならできると思う)
3・検証用のブログのatompubのURLを取得する
4・ユーザーとパスワードを取得する
atompubのURLは以下のページを参考
5・node.jsをインストールする
https://nodejs.org/ja/
よりv8.6.0をインストールする
6・ツールをダウンロードする
git clone https://github.com/masalib/hatena_blog_tool.git hatena_blog_tool
cd hatena_blog_tool
npm install wsse async cheerio cheerio-httpcli --save
gitが入っていない人は
https://github.com/masalib/hatena_blog_tool.gitにアクセスして
ダウンロードしてください
7・展開したフォルダに設定ファイルをつくる
config.json
{
"HATENA_SITE_ID": "hatena_account_ib",
"HATENA_SITE_PW": "atom password",
"HATENA_SITE_SOURCE_URL": "https://blog.hatena.ne.jp/XXhatena_account_ibXX/XXbackup_hatena_blog_domainXX/atom",
"HATENA_SITE_DIST_URL": "https://blog.hatena.ne.jp/XXhatena_account_ibXX/XXrestore_hatena_blog_domainXX/atom"
}
HATENA_SITE_IDとHATENA_SITE_PWは作業4で取得したユーザーIDです
HATENA_SITE_SOURCE_URL(元ブログ)は作業1で取得したatompubのURLです
HATENA_SITE_DIST_URL(移行先ブログ)は作業3で取得したatompubのURLです
8・実行する
はまった事
サマリの部分にタグがはいると取り込めなかった
ダウンロードしたデータにsummaryタグがあるのですが
この部分に「"」が閉じていない部分があると
取り込めない
非同期の処理になれていない
node.jsは基本的には非同期の処理なのですが
同期処理のプログラムになれているため、非同期でのnode.jsに苦労した
非同期のnode.jsを同期させて実行させる・・・
う~ん・・・違う言語でいけばよかったかも
今後
SSLに対応して記述やエラーハンドリングができていない部分があるので
修正する
JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック
- 作者: クジラ飛行机
- 出版社/メーカー: ソシム
- 発売日: 2015/08/31
- メディア: 単行本
- この商品を含むブログ (2件) を見る