MENU
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ

カテゴリー

  • 趣味
  • WordPress
  • 本棚
  • プログラミング
  • 日記
  • WEBデザイン
  • フリーランス

タグ

Adobe Illustrator Gatsby.js HTML/CSS MySQL Node.js Python SWELL WordPressプラグイン おすすめツール エックスサーバー セキュリティ バレットジャーナル 確定申告 開発環境

アーカイブ

  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年8月
  • 2020年10月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年8月
  • 2019年5月
  • 2019年2月
  • 2018年11月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2017年10月
プログラミングとデザインでものづくりを楽しむブログ
ゼロの森
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ
ゼロの森
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ
  1. ホーム
  2. プログラミング
  3. 【Python】Livedoorブログの画像を一括ダウンロードするプログラム

【Python】Livedoorブログの画像を一括ダウンロードするプログラム

2021 9/15
プログラミング
2020-05-09 2021-09-15

LivedoorブログからWordPressに移行するときに問題になるのが、画像のこと。

Livedoorブログには画像をエクスポートする機能がないため、記事に掲載されている画像をスクレイピングツールなどで抽出する必要があります。

Mac用の画像取得ツールが見つからなかったので、Pythonで画像取得プログラムを書いてみました。

※pythonがインストールされている前提で説明します。

目次
スポンサーリンク

ソースコード

ブログの記事データから、画像のURLを取得してフォルダにダウンロードしています。

実際に使う場合には、current_urlのところにライブドアブログのURLを入れてください。

import re
import os
import urllib.request
import urllib.error

current_url = "https://livedoor.blogimg.jp/zeroforest" # 現在のライブドアブログURL
img_url = current_url+'/*imgs/[\w/:%#\$&\?\(\)~\.=\+\-]+' # 画像のURLURL

file_name = "backup.txt" # 読み込むファイル名
dir_name = "images" # 画像保存先フォルダ名


def download_file(url, dst_path):
  try:
    with urllib.request.urlopen(url) as web_file:
      data = web_file.read()
      with open(dst_path, mode='wb') as local_file:
        local_file.write(data)
  except urllib.error.URLError as e:
    print(e)

images = [] # 画像URL格納

# backup.txtから、画像URL取得
with open(file_name, "r") as file_data:
  for line in file_data:
    url_list = re.findall(img_url, line)
    for url in url_list:
      images.append(url)

print(str(len(images))+"個の画像を取得します")

# 画像保存先フォルダがなければ作成する。
try:
  os.makedirs(dir_name)
except:
  pass

# 画像のダウンロード
for img in images:
  download_file(img, os.path.join(dir_name, os.path.basename(img)))
このプログラムでやっていること
  1. backup.txtから画像のURLを取得する
  2. imagesフォルダを作成する
  3. 画像のURLにアクセスし、画像をimagesフォルダにダウンロードする。

使い方

プログラムを「script.py」というファイル名で保存します。

script.pyと同じフォルダ内に、ライブドア管理画面からエクスポートした記事データ「backup.txt」を置きます。

フォルダ
├─ script.py
└─ backup.txt

script.pyがあるフォルダ上でターミナルを開いてプログラムを実行します。

python script.py

実行すると、imagesフォルダが作られてm画像が保存されています。

フォルダ
├─ script.py
├─ backup.txt
└─ images
  ├─ 〇〇-s.jpg<br>
  ├─ 〇〇.jpg</p>

Livedoorブログの画像をスクレイピングするプログラムを紹介しました。

ライブドアブログから別ブログに移行時などにご活用いただければと思います。

あわせて読みたい
LivedoorブログからWordPressへのお引っ越し手順 仕事で、LivedoorブログからWordPressへ引っ越し作業を行ないました。 引っ越しの手順と注意点をまとめます。 【WordPressへの移行手順】 引越しの手順 データのエクス…
プログラミング
Python
よかったらシェアしてね!
URLをコピーする
URLをコピーしました!
  • Node.js+ExpressでMySQLに接続して一覧表示する
  • LivedoorブログからWordPressへのお引っ越し手順

関連記事

  • GatsbyJSサイトをv3へアップデート
    2021-08-23
  • 【Mac】Node開発環境のアップデート
    2021-08-06
  • 【Mac】SourcetreeからGitHubへSSH接続する
    2021-08-05
  • Flexboxで作るヘッダーのサンプル集
    2020-07-30
  • CSSとJavaScriptで作るハンバーガーメニュー
    2020-07-25
  • Netlify経由で、Gatsby.jsブログを独自ドメインに公開する手順
    2020-07-10
  • Gatsby.jsでブログを作るための手順
    2020-07-04
  • ラジオボタン・チェックボタンの代わりに画像選択にする方法
    2020-06-13
Zero Forest
カテゴリー
  • WordPress (30)
  • プログラミング (17)
  • WEBデザイン (6)
  • フリーランス (7)
  • ライフログ (10)
    • 趣味 (2)
    • 本棚 (3)
    • 日記 (5)
タグ
Adobe Illustrator (2) Gatsby.js (3) HTML/CSS (7) MySQL (1) Node.js (2) Python (2) SWELL (1) WordPressプラグイン (10) おすすめツール (3) エックスサーバー (4) セキュリティ (3) バレットジャーナル (2) 確定申告 (1) 開発環境 (3)
  • サイトマップ
  • サイトポリシー

© Zero*forest

目次
閉じる