Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当dont\u filter=False时,刮擦请求回调不工作_Python_Python 3.x_Web Scraping_Scrapy - Fatal编程技术网

Python 当dont\u filter=False时,刮擦请求回调不工作

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

我正在使用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'\/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”]
你能发布你的日志吗?我刚刚尝试过,效果很好,但是您的回调只是重定向到同一个解析方法,您几乎被无限递归所困扰,因为您在这里没有生成任何项。我没有看到任何筛选请求。嗨,保罗!你是对的,这只是允许的域名!谢谢