快捷搜索:  汽车  科技

scrapy爬虫在哪里(scrapy抓取糗事百科程序)

scrapy爬虫在哪里(scrapy抓取糗事百科程序)5、添加一个spiders文件,这里我新建文件qiubai_spi.py4、修改items.py文件, 新建一个itme类scrapy startproject qiubai可以看到这里生成了名为qiubai的文件3、打开浏览器进入糗事百科网站,我们看到有每页有很多条糗事我们主要获取:作者名,作者头像、文字内容、附加图片、好笑(赞次数)、评论次数

1、安装scrapy

pip install scrapy

2、新建一个项目

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(1)

查了下命令,使用startproject

scrapy startproject qiubai

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(2)

可以看到这里生成了名为qiubai的文件

3、打开浏览器进入糗事百科网站,我们看到有每页有很多条糗事

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(3)

我们主要获取:作者名,作者头像、文字内容、附加图片、好笑(赞次数)、评论次数

4、修改items.py文件, 新建一个itme类

5、添加一个spiders文件,这里我新建文件qiubai_spi.py

右键审查元素

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(4)

每条糗事为以div包裹,我们点开其中的div

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(5)

由此我们新建QiubaiSpider类用于抓取数据

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(6)

scrapy爬虫在哪里(scrapy抓取糗事百科程序)(7)

这里需要在settings.py加上这个

`ITEM_PIPELINES = { 'qiubai.pipelines.QiubaiPipeline': 300

6、运行爬虫

scrapy crawl qiubai

发现报错了,好像不能直接范围怎么办呢?

你应该想到了,伪造头部,要他觉得我们是浏览器

7、最后代码

加上头部后就可以正常抓取,抓取的时候你可能发现有些会发生错误,那是因为糗事百科前端布局比较变态,比如是匿名发送时,div结果不一样,你需要单独解析。所以下边你会看到很多异常处理,大家可以自己试下。

我这边最后还增加了抓取每一页的一个循环调用,至于解析页码也请大家自己实现

import scrapy

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入学习交流群

626062078,我们一起学Python!

猜您喜欢: