Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.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 Scrapy-尝试目录中的所有ID,而不进行递归链接搜索_Python_Web Scraping_Scrapy_Web Crawler - Fatal编程技术网

Python Scrapy-尝试目录中的所有ID,而不进行递归链接搜索

Python Scrapy-尝试目录中的所有ID,而不进行递归链接搜索,python,web-scraping,scrapy,web-crawler,Python,Web Scraping,Scrapy,Web Crawler,假设我们想从一个网站抓取一个特定目录,其中页面名称是特定范围内的整数ID,例如/book/book\u ID其中book\u ID是从0到2000000,我不想抓取整个网站,并且没有一个页面包含所有链接。不允许使用搜索页面(对于空搜索)或效率低下。所以我们只想迭代该范围内的所有ID,并尝试下载页面,然后忽略404错误 但由于Scrapy功能强大,体积庞大,可以处理很多其他事情,我想知道它是否可以用于Scrapy。是的,这是可能的。用于启动对/book/book\u ID页面的请求: def st

假设我们想从一个网站抓取一个特定目录,其中页面名称是特定范围内的整数ID,例如
/book/book\u ID
其中book\u ID是从0到2000000,我不想抓取整个网站,并且没有一个页面包含所有链接。不允许使用搜索页面(对于空搜索)或效率低下。所以我们只想迭代该范围内的所有ID,并尝试下载页面,然后忽略404错误

但由于Scrapy功能强大,体积庞大,可以处理很多其他事情,我想知道它是否可以用于Scrapy。

是的,这是可能的。用于启动对
/book/book\u ID
页面的请求:

def start_requests(self):
    for book_id in xrange(1, 20000000):
        yield Request('https://my_site.com/book/{book_id}'.format(book_id=book_id),
                      callback=self.parse_book)

def parse_book(self, response):
    # parse the response
另外,Scrapy默认情况下会忽略
404
。但是,如果您需要,您可以处理它,请参见: