自动抓取网页数据( 如何用WebScraper选择元素的操作点击Stiemaps图解 )
优采云 发布时间: 2021-10-31 16:14自动抓取网页数据(
如何用WebScraper选择元素的操作点击Stiemaps图解
)
这是简单数据分析系列文章的第七篇。
在第 4 章 文章 中,我解释了如何在单个网页中抓取单一类型的信息;
在第五章文章中,我解释了如何从多个网页中抓取单一类型的信息;
今天我们要讲的是如何从多个网页中抓取多种类型的信息。
本次爬取基于Simple Data Analysis 05,所以我们从一开始就解决了爬取多个网页的问题,我们将尽最大努力弄清楚如何爬取多种类型的信息。
实际操作前先理清逻辑:
最后几篇文章只抓取了一种元素:电影名称。在本期中,我们将捕捉多种类型的元素:排名、电影名称、评分和一句话影评。
根据Web Scraper的特点,如果要抓取多种类型的数据,必须先抓取包装了多种类型数据的容器,然后选择容器中的数据,这样才能正确抓取。我画个图来演示一下:
我们首先需要抓取多个容器,然后抓取容器中的元素:编号、电影名称、评分和一句话影评。当爬虫完成后,我们将成功抓取数据。
概念明确后,我们就可以谈实际操作了。
如果您对以下操作有任何疑问,可以查看简单数据分析04的内容,其中文章详细说明了如何使用Web Scraper来选择元素。
1.点击Stiemaps,在新面板中点击ID为top250的那一列数据
2.删除旧选择器,点击添加新选择器添加新选择器
3.在新的选择器中,注意将Type类型改为Element,因为在Web Scraper中,只有元素类型可以收录多个内容。
我们检查的元素区域如下图所示。确认无误后,点击保存选择器按钮,返回上一个操作面板。
在新面板中,单击您刚刚创建的选择器中的数据行:
点击后,我们将进入一个新的面板。根据导航,我们可以知道它在容器内。
在新面板中,我们单击 Add new selector 创建一个新的选择器来获取电影的名称。类型为文本。值得注意的是,因为我们选择了容器中的文本,所以一个容器中只有一个电影名称。所以不要勾选多选,否则爬取会失败。
在选择电影名称时,您会发现容器以*敏*感*词*突出显示,因此我们只需选择*敏*感*词*区域中的电影名称。
点击Save selector保存选择器后,我们会再创建三个选择器,分别选择编号、评分和一句话影评,因为操作和上面完全一样,这里就不赘述了。
排名编号:
分数:
一句话影评:
我们可以观察到我们在面板中选择的多个元素。一共有四个要素:姓名、编号、分数和评论。类型都是文本。不需要多选。父选择器都是容器。
我们可以点击Stiemap top250下的选择器图,查看我们的爬虫选择的元素的层次关系。确认无误后,我们可以点击Stiemap top250下的Selectors,返回选择器显示面板。
下图展示了我们这次爬虫的层级关系。和我们之前的理论分析一样吗?
确认选择无误后,我们就可以抓取数据了。操作在简单数据分析04和简单数据分析05中都有提到,忘记的朋友可以回顾一下老文章。下图是我抓到的数据:
和以前一样,数据是乱序的,但是没关系,因为排序属于数据清洗的内容,而我们当前的主题是数据捕获。先完成相关知识点,再攻克下一个知识点,是比较合理的学习方式。
今天的内容其实蛮多的。你可以先消化一下。在下一篇文章中,我们将讨论如何抓取点击**“加载更多”**加载数据的网页内容。