scrapy 爬取一组有序的URL

http://www.xxx.com/search/1.html
http://www.xxx.com/search/2.html
http://www.xxx.com/search/3.html
http://www.xxx.com/search/4.html

比如如上的URL,只有一个地方在改变,如何简写呢?

start_urls = [http://www.xxx.com/search/1.html]

url = "http://www.xxx.com/search/%d.html"

pageNum = 1

def parse(self,pesponse):
    
    for sel in response.xpath("..."):
        获取数据,放入管道
        yield item

    if self.pageNum <= 10:  
            self.pageNum += 1
            print('爬第:%d 页' % self.pageNum)

            new_url = self.url %d self.pageNum) #进行拼接

            # callback 回调函数,页面进行解析
            yield scrapy.Request(url=new_url, callback=self.parse)

注意,这里会出现如下错误:

ValueError: unsupported format character 'C'

我们需要左以下修改:

new_url = self.url.replace('%d',str(self.pageNum))

 

你可能感兴趣的:(python,python)