使用 Scrapy 框架爬取自己的简书文章

2018-11-20  本文已影响0人  捡个七

先爬取自己的简书页面来试下手。简单地获取个人简书页面的文章和链接。

创建项目

scrapy startproject jianshu

创建爬虫

cd jianshu   // 需要 cd 两次,有两个 jianshu 目录
cd jianshu
scrapy genspider jianshu_spider www.jianshu.com

编写爬虫

  1. 先启动 chrome 的开发者模式,找到自己需要的元素
  1. 执行scrapy shell "https://www.jianshu.com/u/96d116310516",爬取自己简书首页数据,输入对应的提取数据的代码,查看提取的数据是否正确:
  1. 确认是自己想要提取的内容后,在创建的 jianshu_spider.py 里补充代码:
# -*- coding: utf-8 -*-
import scrapy


class JianshuSpiderSpider(scrapy.Spider):
    name = 'jianshu_spider'
    allowed_domains = ['www.jianshu.com']
    start_urls = ['https://www.jianshu.com/u/96d116310516']

    def parse(self, response):
        for item in response.css('.note-list li'):
            # 文章标题
            #print(item.css('div a::text').extract()[0])
            # 文章链接
            short_url = item.css('div a::attr(href)').extract()[0]
            # 文章完整 url
            full_url = response.urljoin(short_url)
            #print(full_url)
            yield {
                    'title': item.css('div a::text').extract()[0],
                    'url':full_url,
                    }

执行爬虫

在命令行窗口输入 scrapy crawl jianshu_spider,得到的结果如下:

上一篇下一篇

猜你喜欢

热点阅读