Python クローラーの入門: Web 画像のクロール

WBOY
リリース: 2022-07-11 12:06:36
転載
2871 人が閲覧しました

この記事では、Pythonに関する関連知識を提供します, 主に Web 画像のクロールに関連する問題を整理します. データを効率的に取得するために、クローラーは非常に使いやすく、Python を使用してクローラーを作成しますも非常に簡単で便利です。簡単な小さなクローラー プログラムを通して、クローラーを作成する基本的なプロセスを見てみましょう。一緒に見てみましょう。皆さんのお役に立てれば幸いです。

Python クローラーの入門: Web 画像のクロール

[関連する推奨事項:Python3 ビデオ チュートリアル]

この情報爆発の時代において、効率的にデータを取得したい場合は、クローラーはとても便利です。 Python を使用してクローラを作成することも非常に簡単で便利です。単純な小さなクローラ プログラムを通じて、クローラを作成する基本プロセスを見てみましょう:

準備

Language: python

IDE: pycharm

最初に使用するライブラリは、初心者向けの最も簡単なプログラムなので、主に次の 2 つを使用します。 #

import requests //用于请求网页 import re //正则表达式,用于解析筛选网页中的信息
ログイン後にコピー
その中には Python が付属しており、リクエスト ライブラリは自分でインストールする必要があります。コマンド ラインに pip install リクエストを入力するだけです。

次に、ランダムな Web サイトを見つけます。プライバシーに関わる情報をクロールしようとしないように注意してください。これが絵文字パッケージ Web サイトです:

注: ここの絵文字パッケージ Web サイトのコンテンツはダウンロードできます。したがって、クローラーはプロセスを 1 つずつ簡素化するだけです。有料リソースをクロールしないように注意してください。

#私たちがしなければならないことは、クローラーを通じてこれらの絵文字をコンピューターにダウンロードすることです。

クローラ プログラムの作成

まず、Python 経由でこの Web サイトにアクセスする必要があります。コードは次のとおりです:

headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0' } response = requests.get('https://qq.yh31.com/zjbq/',headers=headers) //请求网页
ログイン後にコピー
ヘッダーを追加する必要がある理由このセクションは、一部の Web ページがあなたを認識するためです。これは Python を通じてリクエストされ、拒否されるため、通常のリクエスト ヘッダーを変更する必要があります。ランダムに 1 つを見つけることも、f12 を使用してネットワーク情報から 1 つをコピーすることもできます。

次に、Web ページ コード内でクロールする画像の場所を見つける必要があります。f12 でソース コードを確認し、次のように絵文字パッケージを見つけます。

## 次に、一致ルールを作成し、中央の文字列を正規表現に置き換えます。最も単純なものは、*?

t = '(.*?)'
ログイン後にコピー

のようになります。

その後、re ライブラリの findall メソッドを呼び出して、関連するコンテンツをクロール ダウンできます:

result = re.findall(t, response.text)
ログイン後にコピー

返されたコンテンツは文字列で構成されるリストです。最後に、Python を使用してアドレスにクロールしました。画像をダウンロードしてフォルダーに保存するだけです。

プログラム コード

import requests import re import os image = '表情包' if not os.path.exists(image): os.mkdir(image) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0' } response = requests.get('https://qq.yh31.com/zjbq/',headers=headers) response.encoding = 'GBK' response.encoding = 'utf-8' print(response.request.headers) print(response.status_code) t = '(.*?)' result = re.findall(t, response.text) for img in result: print(img) res = requests.get(img[0]) print(res.status_code) s = img[0].split('.')[-1] #截取图片后缀,得到表情包格式,如jpg ,gif with open(image + '/' + img[1] + '.' + s, mode='wb') as file: file.write(res.content)
ログイン後にコピー

最終結果は次のようになります:

##[関連する推奨事項:Python3 ビデオ チュートリアル

]

以上がPython クローラーの入門: Web 画像のクロールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!