Scrapy中的Request详解:
https://zhuanlan.zhihu.com/p/40290931
Scrapy中的Response详解:
https://zhuanlan.zhihu.com/p/40332579
创建一个Scrapy爬虫
使用命令scrapy st删除线格式 artproject spidername创建爬虫文件夹、
然后使用scrapy genspider spidername someweb.com完成爬虫文件的创建
深度爬取
首先获得下一级网页的Url:
def parse(self, response):
MovieInfoWebsUrls=response.xpath('//div[contains(@class,"indent")]//a/@href').extract()
extract返回该网页下规定路径的所有网址的列表
for MovieInfoWebsUrl in MovieInfoWebsUrls:
yield scrapy.Request(MovieInfoWebsUrl,callback=self.parseInfo)
对列表中的每一个元素(str类型)用yield 调用Request对抓取到的url进行爬取
import scrapy
class ScrapyspiderSpider(scrapy.Spider):
name = 'ScrapySpider'
allowed_domains = ['douban.com']
start_urls = ['https://movie.douban.com/chart']
def parse(self, response):
MovieInfoWebsUrls=response.xpath('//div[contains(@class,"indent")]//a/@href').extract()
for MovieInfoWebsUrl in MovieInfoWebsUrls:
yield scrapy.Request(MovieInfoWebsUrl,callback=self.parseInfo)
def parseInfo(self, response):
Title=response.xpath('//*[@id="content"]/h1/span[1]/text()').extract()
yield{
'title':Title
}