2016-12-28 99 views
0

Amazonの商品リストをスクラップするPythonコードがあります。私はプロキシとヘッダーを設定しました。私はまた、各クロールの前に睡眠()を持っています。しかし、私はまだデータを取得できません。私は戻って取得MSG:Amazon(ヘッダー、プロキシ、遅延あり)を掻き取るときにブロックされる

url = "https://www.amazon.com/Baby-Girls-Shoes/b/ref=sv_sl_fl_7239798011?ie=UTF8&node=7239798011" 
    headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0'} 

    proxies_list = ["128.199.109.241:8080","113.53.230.195:3128","125.141.200.53:80","125.141.200.14:80","128.199.200.112:138","149.56.123.99:3128","128.199.200.112:80","125.141.200.39:80","134.213.29.202:4444"] 

    proxies = {'https': random.choice(proxies_list)} 

    time.sleep(0.5 * random.random()) 
    r = requests.get(url, headers, proxies=proxies) 
    page_html = r.content 
    print page_html 

この:アマゾンデータへの自動アクセスを議論するためには、私のコードの

部分である..... [email protected]お問い合わせください他の人がプロキシ、ヘッダー、遅延(スリープ)を使うことを提案しているので、Stackoverflowで利用可能な他のものの複製ではありません。私は彼らが示唆したことをした後でさえもこすり落とすことはできません。

コードは最初は動作していましたが、数ページを削った後に動作を停止しました。

+0

あなたをブロックしている場合は、自分のウェブサイトをスクラップすることは望ましくありません。彼らのAPIのように見えるだけであなたのレビューを参照してください:http://stackoverflow.com/questions/4811259/is-there-an-amazon-com-api-to-retrieve-product-reviews全体的に、それはTOSを壊しているかもしれませんが、それは良いことではありません。 – MooingRawr

+0

リクエストの間に十分待っていますか?それが最初に働いて停止している場合、これは最も可能性の高い説明のようです。 –

+2

あなたは実際にあなたにどのようなオプションがあるかも議論するために彼らに連絡を試みましたか? – stevieb

答えて

-1

リクエストでセッションを使用してみてください。クッキーとヘッダーを覚えています。それが失敗した場合、ヘッドレスを好む場合は、クロムドライバーまたはphantomjsドライバーでセレン2を使用しようとします。

0

Amazonは、あなたがブラウザを使用しているかどうかを確認するために、何か余分なこと(例えば、あなたのクッキーを使って)を行う可能性が高いです。あなたのブラウザからのリクエストとあなたのスクリプトからのリクエストとの違いを見るためには、ブラウザーを調べて、のようにコピーしてください。 1つのリクエストをアマゾンに依頼することです。次に、curlコマンドをthis toolというpython要求コードに変換します。そこにはあなたのブラウザー上の要求と全く同じような要求があります。アマゾンがリクエストごとにあなたのクッキーを変更しているかどうかを理解するためにこれを数回行い、スクリプトでこの振る舞いを模倣しようとします。

要求がまったく同じように見える場合は、おそらく2回の連続した要求の間に待ち時間を増やす必要があります。私はこれが役立つことを願っています

r = requests.get(url, headers, proxies=proxies) 

実行します:代わりの

2

r = requests.get(url, headers=headers, proxies=proxies) 

は、これが今の私のために問題を解決しました。うまくいけば、決議は機能し続けるでしょう。

+0

これまでのところこれまでの成果はありますか? – user14042

+0

私は長い間それを使用しませんでしたが、私が使用していた限り動作しました。 – TDS

関連する問題