Python 刮削:刮削链接列表

Python 刮削:刮削链接列表,python,web-scraping,scrapy,scrapy-spider,Python,Web Scraping,Scrapy,Scrapy Spider,这个问题在某种程度上是我之前提出的问题的后续问题 我试图刮一个网站,其中包含一些链接的第一页。类似于 现在,由于我想获取页面上项目的详细信息,我提取了它们各自的URL 我已将这些URL保存在列表中 如何启动爬行器来逐个刮页 为了更好地理解: [urlA, urlB, urlC, urlD...] 这是我抓取的URL列表。现在我想启动一个爬行器来逐个刮取链接 我该怎么做呢?我假设您要遵循的URL指向具有相同或类似结构的页面。如果是这样,你应该这样做: from scrapy.contrib.sp

这个问题在某种程度上是我之前提出的问题的后续问题

我试图刮一个网站,其中包含一些链接的第一页。类似于

现在,由于我想获取页面上项目的详细信息,我提取了它们各自的URL

我已将这些URL保存在列表中

如何启动爬行器来逐个刮页

为了更好地理解:

[urlA, urlB, urlC, urlD...]
这是我抓取的URL列表。现在我想启动一个爬行器来逐个刮取链接


我该怎么做呢?

我假设您要遵循的URL指向具有相同或类似结构的页面。如果是这样,你应该这样做:

from scrapy.contrib.spiders import CrawlSpider
from scrapy.selector import Selector
from scrapy.http import Request

class YourCrawler(CrawlSpider):

   name = 'yourCrawler'
   allowed_domains = 'domain.com'
   start_urls = ["htttp://www.domain.com/example/url"]


   def parse(self, response):
      #parse any elements you need from the start_urls and, optionally, store them as Items.
      # See http://doc.scrapy.org/en/latest/topics/items.html

      s = Selector(response)
      urls = s.xpath('//div[@id="example"]//a/@href').extract()
      for url in urls:
         yield Request(url, callback=self.parse_following_urls, dont_filter=True)


   def parse_following_urls(self, response):
       #Parsing rules go here

否则,如果您希望按照URL引导到具有不同结构的页面,那么您可以为它们定义特定的方法(如parse1、parse2、parse3…。

我认为您应该在您的页面中重新阅读答案。您不生成URL列表,而是从这些URL的start_Request返回一个新请求对象列表。