《Web Scraper网页爬虫教程》 是我以谷歌浏览器插件Web Scraper为爬虫工具,理论与实战结合的教程。
如果大家有爬虫需求,欢迎大家公众号联系我,我可以免费帮忙爬取数据。
关于我的更多学习笔记,欢迎您关注“武汉AI算法研习”公众号,公众号浏览此系列教程视觉效果更佳!
经过“教程03”初步实现了对P2P网站的数据抓取,了解到Web Scraper中非常重要的概念是Selectors,通过Web Scraper爬取页面数据,就是新建不同层次的Selector。
「Selectors」
Web Scraper包含有很多的Selector,这些Selector对应着不同种类选择类型,其中主要分为三种类型
数据类selectors
- Text selector
- Link selector
- Link popup selector
- Image selector
- Table selector
- Element attribute selector
- HTML selector
- Grouped selector
连接类selectors
- Link selector
- Link popup selector
元素类selectors
- Element selector
- Element scroll down selector
- Element click selector
「Text selectors」
文本选择器用于文本选择。文本选择器将从所选元素(element)中提取文本数据。其中的html标签将被剥离,只返回文本。
e.g:假如正在抓取的每页只有一篇文章的新闻站点。每页包含文章的标题、发表日期和作者。我们通过Link selector将逐次打开每个页面,然后用Text selector就可以提取文章标题、日期、作者和文章。Text selector的参数设置中Multiple不会被选种,因为我们提取的标题、日期、作者和文章信息只取一条记录。
「Link selectors」
连接选择器,主要是用于网址的获取和页面的跳转,如果Link selector有子selectors,在实际使用过程中会根据Link selector的网址进行网址的自动跳转,反之没有的话就是获取链接地址。
「Link popup selectors」
连接弹出选择器和Link selector类似,不同的是Link popup selectors是用于当点击一个链接弹出一个新的窗口的需求。
「Element selectors」
元素选择器用于包含多个数据元素的元素选择。例如,元素选择器可能用于选择电子商务网站中的项目列表。选择器将把每个选中的元素作为父元素返回给它的子选择器。子选择器将只提取元素选择器提供给它们的元素中的数据。
就是Element selectors必须要要有子选择器,其子选择器必须在Element selector选择的元素基础上进行选择,
「Element click selectors」
元素点击选择器,主要用于很多场景需要点击后加载元素的页面,比如我们常见的“点击加载更多”和“点击页码”。这些都需要web Scraper进行点击操作页面加载新的数据后再进行爬取。
「Element scroll selectors」
滚动元素选择器,主要用于部分场景中需要滚动加载更多的页面,比如我们在浏览很多微博的时候,都是滚动鼠标进行加载更多。
「Grouped selectors」
分组选择器可以将多个元素的文本数据分组到一条记录中。提取的数据将存储为JSON形式,就是一个组合工具把多个元素拼接到一起。
「Html selectors」
Html选择器可以提取选定元素中的HTML和文本。其只是提取其父元素范围内的Html 。
「Html attribute selectors」
元素属性选择器可以提取HTML元素的属性值。例如,您可以使用这个选择器从这个链接中提取title属性:
<a href="#" title="my title">
「Table selectors」
针对很多的页面实际上数据展现都在一个表格里面,有这表头和内容。这个时候我们可以采用Table selectors进行批量简单提取,在提取的过程中需要制定题目行和内容行。
「Image selectors」
图像选择器可以提取图像的src属性(URL)。
「Sitemap.xml selectors」
xml链接选择器从站点发布的Sitemap.xml文件中提取url。Sitemap.xml主要是网站为了便宜搜索引擎爬虫能够更容易地搜索站点,在大多数情况下,它们包含所有相关站点的页面url。