在工作和生活中,我们收到从网页上摘取数据的需求,比如需要统计电商网站上不同产品的价格、销量等等。如果是手工复制粘贴就比较麻烦。
但是,如果使用Python或是其他脚本语言来爬取数据需要使用很专业的编程知识,学习HTML、BeautifulSoup、request等等又苦又累,一不小心还会秃头!
有没有办法可以让我们简单地爬取数据而不用去学这些复杂的编程语言呢?
今天小趣就给大家带来一种方法,通过一个叫做Web scraper的Chrome扩展器,三分钟不到就能学会爬取数据!
以爬取网站小说列表为例
我们首先在Chrome浏览器安装一个Web scraper插件,安装后按下f12或如图所示,打开开发者工具,并开发者工具调整到页面的下方,就可以开始爬取了。
什么是elements?
开始爬取之前,先跟大家讲讲什么是elements!一般来说,网站上的数据会分装在不同的项目中,我们称之为elements。相同的element里面包含的数据类型也是相同的。
我们给网站爬虫指定好需要爬取的elements以及定位出每个元素内部需要爬取的数据标签,爬虫就会自动爬取这个页面上所有的elements,将带有相同数据标签的文本、图片、链接等等存在文件中。
三步配置爬虫
1)新建SiteMap
了解了elements,现在开始配置爬虫。如图所示,打开网页后,选中最后一个选项卡,选择创建一个网站地图(SiteMap)。给这个地图起一个名字,把需要爬取数据的链接复制进地址栏,然后点击创建地图。
2)定义elements爬取范围
之后我们要定义element主要是有哪些范围,我们给他起个名字,叫做box,然后类型选择elements。把mulitiple多选框打开,点击select,然后选中页面上的两个相邻的elements,让插件知道我们要爬取的容器的类型,以及elements是从哪里开始。之后,点击页面上的Done Slecting按钮,结束选择并保存这个筛选器。
3)相同elements里面定义不同的id
我们进入root界面,看到我们刚才已经写好的box筛选器,点击进入二级菜单。然后在筛选器内新建一个新的二级筛选器。这里可以看到我们的elements已经被框成一个黄颜色的窗格,说明我们是在box里面进行筛选。
然后我们就像之前建立box筛选器一样,分别建立书名、作者、价格和评论数的筛选器。注意Type这里我们需要选择text,而不是elements类型了。这样的话我们的这个文字才会被输出到文件中,然后同样的点击Done select,把这个筛选器保存好。
开始爬取数据
如图,我们已经建立了标题、作者、价格、和评论数4个筛选器,然后回到Box层级下,点击第2个SiteMap amazon-book选项卡,选择Scrape按钮进行爬取操作。然后这个时候,插件就会自动打开一个小窗口开始爬取。接下来我们就可以看见我们的数据,已经被保存到文件中。
打开文件就可以看到数据已经完完全全被抓下来了。怎么样,三分钟不到就学会爬取数据是不是成就感爆棚呢?!
除了爬取单页的内容,如果进行相应的设置还可以对多个页面或者是二级菜单进行爬取,具体详情可以点击插件上的视频教程按钮来跟着视频教程一起学习。
或私信@趣玩好工具【爬虫】获取Web Scraper视频教程,因为篇幅的原因就不在这里赘述了。
以上就是小趣本次的教程了,希望你能喜欢!
其他值得推荐的App