5
私はScientialでProxyMeshを使い始めました。 ProxyMeshは、1つのポートにIPアドレスのプールを提供することになっています。以下のサンプルコードはループで繰り返されており、ミドルウェアは有効になっており、全体的にうまく動作します。特定の要求ごとにどのIPアドレスが使用されているか(もしあれば)要求に使用されているIPアドレスを確認するPython/Scrapy + ProxyMesh
request = scrapy.Request(producturl, self.parse_product_info)
request.meta['proxy'] = 'http://uk.proxymesh.com:xxx'
yield request
私はSOFで同様の投稿を見つけましたが、この特定の質問には対処しませんでした。
おそらく、proxymeshがヘッダー内にその情報を返した場合、それをレスポンスで出力しようとすることができます: 'print response.headers'。 btw、[crawlera](http://crawlera.com/)は実際に使用されたプロキシを応答ヘッダーに返します。 – eLRuLL
これは良いヒントです。応答ヘッダ:X-Proxymesh-Ipがあります。私はそれをresponse.headers.get( 'X-Proxymesh-Ip')として解析することができました。 ProxyMeshが使用されているという事実がサイトの管理者にも見えて、これを隠すことができるのであれば私は気にしませんか? – Turo
もちろん、サイトはどのプロキシ(またはIP)が自分のサイトをクロールするのに使われているのか知っていますが、 'X-Proxymesh-Ip'はあなたに返されます。少なくともそれは[crawlera](http://crawlera.com)の仕組みです。 – eLRuLL