仮想環境作りたい方は以下でOK
python -m venv ~/.local/share/virtualenvs/venv1 source ~/.local/share/virtualenvs/venv1/bin/activate
pythonスクリプト
dl.pyという名前にしておきます。
# dl.py import os import re import requests def download_png(text_file): """ テキストファイルからPNG画像のみをダウンロードする関数 Args: text_file: テキストファイルのパス。★下記に書き換え場所あり Returns: ダウンロードされたPNG画像のファイル名リスト """ # ダウンロードフォルダを作成 if not os.path.exists("downloads"): os.makedirs("downloads") # テキストファイルを開く with open(text_file, "r") as f: text = f.read() # PNG画像のURLを抽出 urls = re.findall(r"(https?:\/\/[^\s]+.png)", text) # PNG画像をダウンロード filenames = [] for url in urls: filename = os.path.basename(url) with open(os.path.join("downloads", filename), "wb") as f: f.write(requests.get(url).content) filenames.append(filename) return filenames if __name__ == "__main__": # テキストファイルのパスを指定 ★この下の行のlifehack.tatsukichi.ninja.export.txtを取り込みたいファイルに書き換える text_file = "lifehack.tatsukichi.ninja.export.txt" # PNG画像をダウンロード filenames = download_png(text_file) # ダウンロードされたファイル名を表示 print("ダウンロードされたファイル:") for filename in filenames: print(filename)
実行
python3 dl.py
これでpngファイルだけダウンロードできました。