我发现我抓取的某个页面速度很慢,使用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
答案 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代理有问题。