Python 当dont\u filter=False时,刮擦请求回调不工作
我正在使用Scrapy1.1.0和Python3.5从网站上抓取数据。 以下代码正在运行Python 当dont\u filter=False时,刮擦请求回调不工作,python,python-3.x,web-scraping,scrapy,Python,Python 3.x,Web Scraping,Scrapy,我正在使用Scrapy1.1.0和Python3.5从网站上抓取数据。 以下代码正在运行 class ImdbSpider(scrapy.Spider): name = "imdbFav" allowed_domains = ["http://www.imdb.com"] start_urls = [ "http://www.imdb.com/title/tt0203166/" ] recommendRegex = re.compile(r
class ImdbSpider(scrapy.Spider):
name = "imdbFav"
allowed_domains = ["http://www.imdb.com"]
start_urls = [
"http://www.imdb.com/title/tt0203166/"
]
recommendRegex = re.compile(r'\/title\/([A-Za-z0-9]*)')
def parse(self, response):
for recommend in response.xpath('//div[@class="rec_page"]/div[@class="rec_item"]/a/@href').extract():
mo = self.recommendRegex.search(recommend)
recommendId = mo.group(1)
link = "http://www.imdb.com/title/" + recommendId
print(link)
yield scrapy.Request(link, callback=self.parse, dont_filter=True)
enter code here
但是。。。我不知道如果dont\u filter=False,为什么不调用请求回调。
文件说:
当您希望多次执行相同的请求以忽略重复项筛选器时,可使用此选项。小心使用,否则你会陷入爬行循环
但是我没有要求相同的url。这里发生了什么事
谢谢朋友们 这是常见的朋友问题:
- 格雷格和梅丽莎是朋友
- 梅丽莎和约翰是朋友
- 约翰和杰克是朋友
- 杰克和格雷格是朋友
- 一起意味着我们是最好的
- 我们是最好的,给我爱
- 向我展示爱意味着在一起
当你在寻找建议时,电影中肯定会有一些重复。最好的方法是将电影数据保存到数据库中,并根据其id给出建议。这是常见的朋友问题:
- 格雷格和梅丽莎是朋友
- 梅丽莎和约翰是朋友
- 约翰和杰克是朋友
- 杰克和格雷格是朋友
- 一起意味着我们是最好的
- 我们是最好的,给我爱
- 向我展示爱意味着在一起
当你在寻找建议时,电影中肯定会有一些重复。最好的方法是将电影数据保存到数据库中,并根据其id给出建议。最后检查您的蜘蛛统计数据。您可能有一个非0的
非现场/过滤的。您需要在允许的\u域中使用域名,而不是URL。所以使用allowed\u domains=[“imdb.com”]
你能发布你的日志吗?我刚刚尝试过,效果很好,但是您的回调只是重定向到同一个解析方法,您几乎被无限递归所困扰,因为您在这里没有生成任何项。我没有看到任何筛选请求。嗨,保罗!你是对的,这只是允许的域名!谢谢最后检查你的蜘蛛统计数据。您可能有一个非0的非现场/过滤的。您需要在允许的\u域中使用域名,而不是URL。所以使用allowed\u domains=[“imdb.com”]
你能发布你的日志吗?我刚刚尝试过,效果很好,但是您的回调只是重定向到同一个解析方法,您几乎被无限递归所困扰,因为您在这里没有生成任何项。我没有看到任何筛选请求。嗨,保罗!你是对的,这只是允许的域名!谢谢