学ぶ教科書「Pythonのネットワーク・データの収集」、この本のためのコードのほとんど。
Webクローラーは、データをクロール持つ最初の権威であるクロールクロールされた権利のも、最良のコードを実行することができないではありません。そう爬虫類爬虫類とは異なりますが、人々がWebページにアクセスするように、彼らの爬虫類を偽装するために、すべてのだから、最初。ADO迷彩を開始します。
1.変更要求ヘッダー
ここでのpythonモジュールを使用する要求は、首相がHTTPリクエストヘッダを教え、それはあなたが一連の属性にページ情報を訪問し、サーバ送信を設定し、それぞれの時間です。ここでは7つのフィールドは、ネットワーク要求を初期化するために使用されるほとんどのブラウザはされています。
プロパティ |
コンテンツ |
ホスト | https://www.google.com/ |
接続 | 生き続ける |
受け入れます | テキスト/ HTML、アプリケーション/ XHTML + xmlの、アプリケーション/ XML、Q = 0.9、画像/ WEBP、* / *; Q = 0.8 |
ユーザーエージェント | Mozillaの/ 5.0(Macintosh版、インテルのMac OS X 10_9_5)のAppleWebKit / 537.36(KHTMLのような、 のGecko)クローム/ 39.0.2171.95サファリ/ 537.36 |
リファラー | https://www.google.com/ |
受け入れエンコード | gzipで、収縮、SDCH |
受け入れる言語 | 米国、; qは= 0.8 |
これは、発行されたWebサイトにアクセスするホスト要求(画像はF12を開くための本の著者の要求を示し、そのホスト要求を表示することができます)ユーザーです。これは、リクエストヘッダのpython爬虫類からの要求なしです。
受け入れエンコード | 身元 |
ユーザーエージェント | Python- urllibは/ 3.4 |
ヘッドは、要求モジュール要求にカスタマイズすることができます。私たちは、そのブラウザのCookieの設定を確認し、このサイト上の情報を収集するために、次の手順を実行します。
1つの インポート要求 2 から BS4のインポートBeautifulSoup
3セッション= requests.Session() #创建一个セッション对象 4ヘッダー= { " ユーザエージェント":" はMozilla / 5.0(Macintoshでは、インテルのMac OS X 10_9_5) 5 のAppleWebKit 537.36(KHTML、ヤモリ)クロムのような" 6 " 受け入れ":" text / htmlの、アプリケーション/ XHTML + xmlの、アプリケーション/ XMLを、7 、Q = 0.9、画像/ WEBP、* / *; Q = 0.8 " } 8 URL = "
https://www.whatismybrowser.com/開発者は、/ HTTP-ヘッダなどWhat-はIS -My-ブラウザ送る「#このサイトは、私たちは、ページ検証を支援するリクエストヘッダを表示することができます 10 REQ = Session.get(URLを、ヘッダ= #はGET要求を開始ヘッダ) 11。 bsObj = BeautifulSoup(req.text) 12は プリント(bsObj.find(" 表"、{ " クラス":" 表ストライプ" })GET_TEXT)。
出力ヘッダ要求ヘッダ内のプログラムに設定されるべきでは同じです。これは、シミュレーションのシミュレーションユーザアクセスリクエストヘッダの最初のステップを完了する。