Python スクレイピング 自動化

【Python】requestsで画像や動画をダウンロードする方法

この記事は約3分で読めます。

 

最近MENTAでPythonのrequestsでスクレイピングしたURLから画像や動画を実際にダウンロードするにはどうすればよいか、みたいな質問をよくいただくのでこの記事にまとめておこうと思います。

 

画像や動画をローカルのPCに出力・ダウンロードして保存する処理のはrequestsのレスポンスのcontentをそのままwith文とopen関数と.writeで書き出すだけなので案外シンプルに実装できます。

 

以下にサンプルコードを記載します

 

requestsで動画ファイルをローカルに書き出す

 

処理の流れとしてはウェブサイトのHTMLをスクレイピングするのとほとんど変わらないのでrequestsでそのまま実装できます。動画ファイルをダウンロードする流れは具体的には以下のような感じ。注意点はrequests.getで叩くURLの末尾が.mp4みたいな動画ファイルの末尾になっているかです。

 

<サンプルコード>

import requests

response = requests.get('https://video.twimg.com/ext_tw_video/1480552833988829194/pu/vid/480x360/u2jXyMRG-8zYb4IX.mp4?tag=12')

with open(f'sample.mp4', 'wb') as saveFile:

    saveFile.write(response.content)

 

requestsで画像ファイルをローカルに書き出す

 

実際に適当な画像をPythonでrequestsを使ってダウンロードしてみます。

使うのは↓の画像になります。

 

URL:https://tkstock.site/wp-content/uploads/2021/09/line-delete-account-00.jpg

 

 

import requests

response = requests.get('https://tkstock.site/wp-content/uploads/2021/09/line-delete-account-00.jpg') 

with open(f'sample.jpg', 'wb') as saveFile: 

    saveFile.write(response.content)

 

こちらも動画ファイルと同じようにrequests.getで叩くURLの末尾が.jpgみたいな画像ファイルの末尾になっているかに注意してください。

 

またopen関数で指定するファイル名は実行した時点でプログラムを実行したディレクトリの直下に新規作成されるので、存在しないもので大丈夫です。ダウンロード先のディレクトリまで指定したい場合はr’/xxxx/xxxx/sample.jpg’みたいな感じで書けばよいです。

 

 

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

  1. […] 関連記事:【Python】requestsで画像・動画ファイルをスクレイピングしてダウンロードするサンプルプログラム […]

タイトルとURLをコピーしました