美文网首页
抓取热门标签下的名人名言实验报告

抓取热门标签下的名人名言实验报告

作者: 别忘了我可是齐天大圣啊 | 来源:发表于2018-05-12 02:36 被阅读0次

查看目标网页

http://quotes.toscrape.com 中的每个名言都由 HTML 元素表示,如下所示:

每个名言是以HTML元素表示.png

确定采集实体:

从上图可以看出,我们需要采集的实体有三个,分别是:标签(tags)、名人名言(text)和作者(author)

建立新项目:quotes

scrapy startproject quotes enter

查看一下创建的项目

创建项目.png

在items.py中定义自己要抓取的数据

items.py文件.png

检查我们的页面,我们可以看到链接到下一个页面的URL在下面的元素中: 链接到下一个页面.png

在shell中我们可以把它提取出来


提取下一页规则.png

编写myspider.py文件

myspider.py文件.png

现在,在提取数据之后,parse() 方法查找到下一页的链接,使用 urljoin() 方法构建一个完整的绝对 URL(因为链接可以是相对的),并生成(yield)一个到下一页的新的请求, 其中包括回调方法(parse)。

使用它,可以根据我们定义的规则构建复杂的跟踪链接机制,并根据访问页面提取不同类型的数据。

在上面的图片中,它创建一个循环,跟踪所有到下一页的链接,直到它找不到要抓取的站点分页。

运行命令 scrapy crawl quotes -o quotes.json

得到的部分数据如下

部分爬取结果展示.png

如何检查xpath/css定位是否正确

用scrapy shell进行调试

参考教程:http://scrapy-chs.readthedocs.io/zh_CN/1.0/topics/shell.html

总结和感悟

在进行数据的采集任务中,采集的规则和方法是数据采集的核心。要对整个网站仔细地观察和研究,要非常细心并且有耐心。同时仍然需要对python进行更多和更深刻的练习,就比如在这次的学习中发现使用xpath可能比css更加快速准确。还要继续努力才能学好python。

相关文章

网友评论

      本文标题:抓取热门标签下的名人名言实验报告

      本文链接:https://www.haomeiwen.com/subject/xsfcdftx.html