
つくば山の麓にワンダーランドがあると云事で、
連休を利用して訪問。
アルプスの少女ハイジのヨーゼフ に似ている。
ワンダーな雰囲気が無い
ニャンも居ました。
間違えて、
ワンダーランド ではなく。
わんわんランド に行ってしまったようだ。

つくば山の麓にワンダーランドがあると云事で、
連休を利用して訪問。
アルプスの少女ハイジのヨーゼフ に似ている。
ワンダーな雰囲気が無い
ニャンも居ました。
間違えて、
ワンダーランド ではなく。
わんわんランド に行ってしまったようだ。


桐生工業高校 / 創造技術科 染色デザインコース の 卒業展
高校生(同世代)ながら、CGやDTP から、実物の糸や布の染色、織物の制作。
更には、洋服、浴衣、等のデザインや製作まで。やってます。




世界中の株価が乱高下、為替も。
目論見通り、雇用を自国に戻す方が早いか、
自国民が関税に不満を持つ方が早いか。
トランプ関税 → トランプ恐慌 にならなければいいけど。
信長が独裁的な政治を行った時はどうなったか。・・・


毎年撮っています。
8のつく日は、webにお花を ← NEW
goo に保存してあった、6時間かけて画像をダウンロードしました。
懐かしい画像がたくさん。
FC2 (または、他)にアップロードしてリンクの貼り直し。・・・
激戦中です。



私 (17) には、刺激が強めだったです。
Bhagavad Gita (神の歌) ガンジー英訳の序文
61才となったガンジーが、この様に生きていきたい。このような者になりたいと記したモノ。
誰に対しても嫉妬せず、慈悲の泉であり、
エゴイズムがなく、無私であり、
寒さも暑さも幸福も不幸も同じように扱い
常に寛容であり、常に満足し、
善であれ悪であれ、全ての結果を放棄して、
味方も敵も同じように扱い、
尊敬にも無礼にも動じることなく、
賞賛されても高ぶることなく、
人に悪口を言われても落ち込まず、
沈黙して孤独を愛し、
鍛錬された理性を持っている、
そのような者が帰依者なのです。

URL抽出に使うPython プログラム
注:Python は、TAB (字下げ)が大事。
✅ 修正版 extract_urls.py(全文)
こちらを上書きしてください:
python
コピーする編集する
import re
# ファイル名の設定
input_file = "C:/goo_migration/export_blog_1.txt"
# 実際のファイル名に合わせて
output_file = "C:/goo_migration/image_urls.txt"
# 読み込み
with open(input_file, 'r', encoding='utf-8') as f: text = f.read()
# 画像URLを抽出(URL全体を取得)
pattern = r'(https?://[^\s"\']+\.(?:jpg|jpeg|png|gif))' urls = re.findall(pattern, text, re.IGNORECASE)
# 重複排除
unique_urls = sorted(set(urls)) # 保存 with open(output_file, 'w', encoding='utf-8') as f: for url in unique_urls: f.write(url + '\n') print(f"✅ 抽出完了! {len(unique_urls)} 件の画像URLを {output_file} に保存しました。")
✅ 修正のポイント
(https?://...) ← 全体を1つのグループとして取得するように変更
(?:...) ← これは「拡張子のグループはマッチはするけど取り出さない」という意味
✅ 修正のポイント
(https?://...) ← 全体を1つのグループとして取得するように変更
(?:...) ← これは「拡張子のグループはマッチはするけど取り出さない」という意味
🧩 次のステップ
スクリプトを修正・保存
もう一度コマンドプロンプトで実行:
bash
コピーする編集する
python extract_urls.py
今度は image_urls.txt に「https://〜」で始まる画像URLがずらっと並ぶはずです!
確認できたら、「ちゃんと画像URLが並んでます!」と教えてください。
次は画像の一括ダウンロードに進みますよ😊
✅ ブログAの記事から参照されている画像のほとんどをしっかり拾えたということです!
アップロードしていた画像が、およそ 2万枚ありました。
🔜 次のステップ:画像をローカルPCに一括ダウンロード!
これから行うのは:
image_urls.txt にリストされているURLから、画像を1枚ずつゆっくり安全にダウンロードして、
downloaded_images フォルダに保存していく処理です。
🧩 スクリプト download_images.py の準備
以下のコードをコピーして、新しいファイルに保存してください:
✅ download_images.py(ゆっくり・安全・ログ付き)
python
コピーする編集する
import os import requests import time
# ダウンロード元と保存先
input_file = "C:/goo_migration/image_urls.txt" save_base = "C:/goo_migration/downloaded_images" log_success = "C:/goo_migration/image_logs/success.log" log_fail = "C:/goo_migration/image_logs/fail.log"
# フォルダ準備
os.makedirs(save_base, exist_ok=True) os.makedirs("C:/goo_migration/image_logs", exist_ok=True)
# 読み込み
with open(input_file, 'r', encoding='utf-8') as f: urls = [line.strip() for line in f.readlines() if line.strip()]
# スタート
count = 0 for i, url in enumerate(urls): try: response = requests.get(url, timeout=10) response.raise_for_status()
# ファイル名を抽出
filename = url.split("/")[-1] folder = os.path.join(save_base, f"part_{i // 1000 + 1:02d}") os.makedirs(folder, exist_ok=True) filepath = os.path.join(folder, filename) with open(filepath, 'wb') as f: f.write(response.content) with open(log_success, 'a', encoding='utf-8') as log: log.write(url + '\n') print(f"✔ {i+1}/{len(urls)} 保存:{filename}") except Exception as e: with open(log_fail, 'a', encoding='utf-8') as log: log.write(url + '\n') print(f"✖ {i+1}/{len(urls)} 失敗:{url} ({e})") time.sleep(1)
# ゆっくりダウンロード print("✅ ダウンロード完了!")
✅ 実行方法(コマンドプロンプト)
bash
コピーする編集する
cd C:\goo_migration python download_images.py
📁 保存先構成(例)
lua
コピーする編集する
C:\goo_migration\ ├── downloaded_images\ │ ├── part_01\ │ ├── part_02\ │ └── ...(1000枚ごとに分割) ├── image_logs\ │ ├── success.log │ └── fail.log
🛡 安全設計ポイント
対策内容 説明
time.sleep(1) 1秒ごとにダウンロード → gooのアクセス制限対策
1000枚ごとに分割保存 OSやファイル整理の安定性が向上
ログ出力 成功/失敗を記録 → 再実行や手動補完がしやすい
タイムアウトあり ネットワーク遅延でも止まらずに進行(最大10秒)
1秒に1枚の設定なので、約5~6時間かかります。
Python プログラムに依る、アップロード画面
