我有一个最小的爬虫,我创建如下-
from scrapy.selector import Selector
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.contrib.spiders import CrawlSpider, Rule
from sandbox.items import SandboxItem
class SandboxCrawlSpider(CrawlSpider):
name = 'sandbox_crawl'
allowed_domains = ['amazonaws.com']
start_urls = ['http://www.amazonaws.com/']
rules = (
Rule(SgmlLinkExtractor(), callback=('parse_item'), follow=True),
)
def parse_item(self, response):
sel = Selector(response)
i = SandboxItem()
print response.url
return i
这里的问题是我允许的域amazonaws.com
重定向到aws.amazon.com
。在
重定向后,爬虫程序在页面中爬行,但从不调用回调函数。输出是这样的
^{pr2}$如前所示,parse_项从不被调用响应.url'无效,函数中的任何其他语句也不起作用。蜘蛛有错误吗?在
只需将
"aws.amazon.com"
添加到allowed_domains
向请求添加dont_filter=True,但这并不能最终解决问题。在
像这样:
相关问题 更多 >
编程相关推荐