Scrapy使用代理并获得扭曲错误

时间:2014-03-30 17:05:40

标签: python-2.7 scrapy

我发现我抓取的某个页面速度很慢,使用Goagent访问该页面速度相对较快,所以我在启动蜘蛛之前运行这个:

export http_proxy=http://192.168.1.102:8087

然而,当我启动蜘蛛时它报告了这个:

[<twisted.python.failure.Failure <class 'twisted.web._newclient.ParseError'>>]

验证代理我运行此curl命令:

curl -I  -x 192.168.1.102:8087 http://www.blabla.com/target/page.php

并且输出标题对我来说似乎很正常:

HTTP/1.1 200
Content-Length: 0
Via: HTTP/1.1 GWA
Content-Encoding: gzip
X-Powered-By: PHP/5.3.3
Vary: Accept-Encoding
Server: Apache/2.2.15 (CentOS)
Connection: close
Date: Sun, 30 Mar 2014 16:49:29 GMT
Content-Type: text/html

我尝试将此添加到scrapy&#39; settings.py

 DOWNLOADER_MIDDLEWARES = {
    'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware':100
 }

仍然没有运气。这是scrapy的问题还是我错过了其他的东西?

我的scrapy版本为Scrapy 0.22.2

1 个答案:

答案 0 :(得分:1)

您可以尝试同时启用http_proxy和https_proxy。

export http_proxy=http://192.168.1.102:8087
export https_proxy=http://192.168.1.102:8087

我想你的Twisted是15.0.0,这个版本的https throw代理有问题。