1.创建项目
scrapy startproject 项目名
2.创建爬虫(爬虫基于CrawSpider类)
scrapy genspider -t craw 爬虫名 域名
3.爬虫文件中
# CrawSpider的使用
class BookSpider(CrawlSpider):
name = 'book'
allowed_domains = ['dushu.com']
# ----------注意--------
# 开始链接必须符合 正则提取的链接
start_urls = ['https://www.dushu.com/book/1158_1.html']
rules = (
Rule(LinkExtractor(
# 正则条件,寻找符合条件的链接
allow=r'/book/1158_\d+\.html'),
callback='parse_item',
# 默认为True,表示持续寻找符合正则的链接。
follow=True),
)
def parse_item(self, response):
li_list = response.xpath('//div[@class="bookslist"]/ul/li')
for li in li_list:
item = DushuwangItem()
item['name'] = li.xpath('./div/h3/a/text()').extract_first()
item['src'] = li.xpath('./div/div[1]/a/img/@data-original').extract_first()
yield item