scrapy 学习
博客专区 > dff881 的博客 > 博客详情
scrapy 学习
dff881 发表于11个月前
scrapy 学习
  • 发表于 11个月前
  • 阅读 19
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

import scrapy

class QuotesSpider(scrapy.Spider):
    name = "quotes"

    def start_requests(self):
        urls = [
            'http://quotes.toscrape.com/page/1/',
            #'http://quotes.toscrape.com/page/2/',
        ]
        for url in urls:
            yield scrapy.Request(url=url, callback=self.parse)

    def parse(self, response):
        for quote in response.xpath('//div[@class="quote"]'):
            yield {
               'text': quote.xpath('.//span[@class="text"]/text()').extract(),
               'author': quote.xpath('.//small[@class="author"]/text()').extract(),
               'tags': quote.xpath('./div/meta/@content').extract(),
            }
 
        next_page = response.xpath('//li[@class="next"]/a/@href').extract_first()
        if next_page is not None:
            next_page = response.urljoin(next_page)
            yield scrapy.Request(next_page, callback=self.parse)

知识点:

1.xpath如何在循环中访问当前节点下的内容('.//

2.当前循环节点内容下的值可以按照绝对路径获取    (./div/meta

3.当前页面的url如何访问    response.urljoin(

标签: scrapy xpath python
共有 人打赏支持
粉丝 3
博文 14
码字总数 5338
×
dff881
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: