admin管理员组

文章数量:1664337

1、爬虫工具和服务

:https://zhuanlan.zhihu/p/57678048

Chrome 扩展

  • Web Scraper:http://webscraper.io/
  • Data Scraper:https://data-miner.io/
  • Listly:https://listly.io/
  • AnyPicker-可视化爬虫:https://app.anypicker/pricing
  • 迷你派采集器(新加坡公司开发,支持中文):https://doc.minirpa/zh/Management.html

框架

  • Scrapy:https://scrapy/
  • PySpider:https://github/binux/pyspider
  • Apify:https://sdk.apify/

商业服务

  • Parsehub:https://www.parsehub/
  • http://Dexi.io:https://dexi.io/
  • Octparse:https://www.octoparse/
  • Content Grabber:http://www.contentgrabber/
  • Mozenda:https://www.mozenda/
  • ScraperAPI:https://www.scraperapi/
  • Diffbot:https://www.diffbot/
  • http://Import.io:https://www.import.io/
  • http://Embed.lyhttps://embed.ly/
  • ScrapeStorm https://www.scrapestorm/
  • Shenjianshou https://www.shenjian.io/
  • Zaoshu https://zaoshu.io/

实用的数据挖掘、傻瓜式爬虫工具:https://www.zhihu/question/352317943

Python 爬虫工具列表:https://zhuanlan.zhihu/p/399917739

2、Web Scraper 教程

Web Scraper 官网:https://webscraper.io/
有关webscraper的问题,看这个就够了(建议收藏):
:https://zhuanlan.zhihu/p/34104808
:https://blog.csdn/biggbang/article/details/86251526
web scraper 入门到精通之路:https://zhuanlan.zhihu/p/89551741
Web Scraper 系列教程:https://wwwblogs/web-scraper/tag/web%20scraper/

Web Scraper 高级用法

  • 如何导入别人已经写好的 Web Scraper 爬虫__06:https://wwwblogs/web-scraper/p/import_export_sitemap.html
  • 抓取多条内容__07:https://wwwblogs/web-scraper/p/web_scraper_use_element_selector.html
  • 翻页抓取「点击 更多按钮 进行翻页」__08:https://wwwblogs/web-scraper/p/web_scraper_start_element_click.html
  • 自动控制抓取数量 & Web Scraper 父子选择器__09:https://wwwblogs/web-scraper/p/web_scraper_jiqiao.html
  • 翻页抓取「滚动加载,瀑布流」类型网页__10:https://wwwblogs/web-scraper/p/web_scraper_element_scroll_down.html
  • 抓取表格数据__11:https://wwwblogs/web-scraper/p/web_scraper_table.html
  • 翻页抓取分页器翻页的网页__12:https://wwwblogs/web-scraper/p/web_scraper_element_click_once.html
  • 抓取二级网面__13:https://wwwblogs/web-scraper/p/web_scraper_detail_page.html
  • 利用 Link 选择器翻页__14:https://wwwblogs/web-scraper/p/web-scraper-fanye-link.html
  • CSS 选择器的使用__15:https://wwwblogs/web-scraper/p/web-scraper-css.html
  • 抓取属性信息__16:https://wwwblogs/web-scraper/p/web-scraper-element-attribute.html
  • 利用正则表达式筛选文本信息__17:https://wwwblogs/web-scraper/p/web-scraper-regex.html
  • 使用 CouchDB 存储数据__18:https://wwwblogs/web-scraper/p/web-scraper-couchdb.html

安装 Web Scraper

因为 Web Scraper 是 Chrome 浏览器插件,当然是首推使用 Chrome,为了减少兼容性问题最好安装最新版本的 Chrome 浏览器,Windows 电脑的各大应用商店都有最新版的 Chrome 浏览器。

Web Scraper 是一款 Chrome 浏览器插件,可以不用写一行代码进行数据采集。优点:

  1. 门槛足够低,只要你电脑上安装了 Chrome 浏览器就可以用
  2. 永久免费,无付费功能,无需注册
  3. 操作简单,点几次鼠标就能爬取网页,真正意义上的 0 行代码写爬虫

安装 Web Scraper 插件

可以访问外网的同学,直接访问 "Chrome 网上应用店",搜索 Web Scraper 下载安装即可。暂时无条件访问外网,我们可以手动安装插件曲线救国一下,当然和上面比会稍微麻烦一些:首先访问  https://www.gugeapps/  这个国内浏览器插件网站,搜索 Web Scraper,下载插件 ( https://www.gugeapps/webstore/search?key=Web+Scraper ),注意这时候插件不是直接安装到浏览器上的,而是下载到了本地。然后在浏览器的的网址输入框里输入 chrome://extensions/ ,这样就可以打开浏览器的插件管理后台:( 下图是 Chrome 装完 Web Scraper 的截图 )

MAC 和 Windows  用户:

  • 如果你是 Mac 用户,首先要把这个安装包的后缀名 .crx 改为 .zip。再切到浏览器的插件管理后台,打开右上角的开发者模式,把 Web Scraper.zip 这个文件拖进去,这样就安装好了。
  • 如果你是 windows 用户,你需要这样做:
            1. 把后缀为 .crx 的插件改为 .rar,然后解压缩
            2. 进入 chrome://extensions/ 这个页面,开启开发者模式
            3. 点击 "加载已解压的扩展程序",选择第一步中解压的文件夹,正常情况下就安装成功了。

到这里我们的 Chrome 浏览器就成功安装好 Web Scraper 插件了。

注意:webscraper 的最新版本去除了 "Download image" 选项,也就是批量下载图片的功能,最新版本现在只能抓取图片链接。

解决方案有 2 种:

  • 1. 批量抓取到图片的链接,然后使用迅雷等下载工具批量下载。
  • 2. 卸载掉最新的 webscraper,安装老版本。链接: https://pan.baidu/s/1GD6gxDWOaglCLAv0uc--yA 提取码: geif

老版本依然是有 "Download image" 这个选项的。注意不要科学上网,否则 webscraper 可能会自动更新到最新版本。

开发者模式

开启开发者模式,这个功能 https://mp.weixin.qq/s/Q05MV2rgXuce488-bfQTsQ 中提到过,想从普通浏览模式切换到开发者模式,只要按 F12 就可以实现(QQ 浏览器 F12 被禁掉了)。Mac 电脑也可以用 option + command + I 打开,Win 电脑可以用 Ctrl + Shift + I 打开。

控制台打开后,一般会在网页的下方显示,我们其实也可以切到网页的右边显示,具体的操作是点击后台面板右侧的  按钮,然后修改显示位置,具体操作如下动图。

用电脑浏览器模拟手机浏览器是一个很实用的功能。因为现在是移动互联网的时代了,大部分公司的网页都是优先支持移动端,而且手机浏览器的数据结构更清晰,更利于我们抓取数据。开启模拟手机也很简单,只要点击一下开启开发者后台左侧的手机切换图标,然后刷新就好了。

拿豆瓣这个网站演示一下。

抓取 豆瓣 电影

有人之前可能学过一些爬虫知识,总觉得这是个复杂的东西,什么 HTTP、HTML、IP 池,在这里我们都不考虑这些东西。一是小的数据量根本不需要考虑,二是这些乱七八糟的东西根本没有说到爬虫的本质。

爬虫的本质是什么?其实就是找规律

而且爬虫的找规律难度,大部分都是小学三年级的数学题水平。

我们下面拿个例子说明一下,下图历史文章的一个截图,我们可以很清晰的看到,每一条推文可以分为三大部分:标题、图片和作者,我们只要找到这个规律,就可以批量的抓取这类数据。

好了,理论的地方我们讲完了,下面我们开始进行实操。

​豆瓣电影 Top 250:https://movie.douban/top250

第一次上手,我们爬取的内容尽量简单,所以我们只爬取第一页的电影标题。

浏览器按 F12 打开控制台,并把控制台放在网页的下方,然后找到 Web Scraper 这个 Tab,点进去就来到了 Web Scraper 的控制页面。

进入 Web Scraper 的控制页面后,我们按照 Create new sitemap -> Create Sitemap 的操作路径,创建一个新的爬虫,sitemap 是啥意思并不重要,你就当他是个爬虫的别名就好了。

在接下来出现的输入框里依次输入爬虫名和要爬取的链接。

爬虫名可能会有字符类型的限制,我们看一下规则规避就好了,最后点击 Create Sitemap 这个按钮,创建我们的第一个爬虫。

这时候会跳到一个新的操作面板,不要管别的,我们直接点击 Add new selector 这个蓝底白字的按钮,顾名思义,创建一个选择器,用来选择我们想要抓取的元素。

这时候就要开始正式的数据抓取环节了!我们先观察一下这个面板有些什么东西:

说明:

  • 1. 首先有个 Id,这个就是给我们要爬取的内容标注一个 id,因为我们要抓取电影的名字,简单起见就取个 name 吧;
  • 2. 电影名字很明显是一段文字,所以 Type 类型肯定是 Text,在这个爬虫工具里,默认 Type 类型就是 Text,这次的爬取工作就不需要改动了;
  • 3. 我们把多选按钮 Multiple 勾选上,因为我们要抓的是批量的数据,不勾选的话只能抓取一个;
  • 4. 最后我们点击黄色圆圈里的 Select,开始在网页上勾选电影名字;

当你把鼠标移动到网页时,会发现网页上出现了绿色的方块儿,这些方块就是网页的构成元素,当我们点击鼠标时,绿色的方块儿就会变为红色,表示这个元素被选中了:

这时候我们就可以进行我们的抓取工作了。

我们先选择「肖生克的救赎」这个标题,然后再选择「霸王别姬」这个标题(注意:想达到多选的效果,一定要手动选取两个以上的内容

选完这两个标题后,向下拉动网页,你就会发现所有的电影名字都被选中了:

拉动网页检查一遍,发现所有的电影标题都被选中后,我们就可以点击 Done selecting!这个按钮,表示选择完毕;

点击按钮后你会发现下图的红框位置会出现了一些字符,一般出现这个就表示选取成功了:

我们点击 Data preview 这个按钮,就可以预览我们的抓取效果了:

没什么问题的话,关闭 Data Preview 弹窗,翻到面板的最下面,有个 Save selector 的蓝色按钮,点击后我们会回退到上一个面板。

这时候你会发现多了一行数据,其实就是我们刚刚的操作内容被记录下来了。

在顶部的 tab 栏,有一个 Sitemap top250 的 tab,这个就是我们刚刚创建的爬虫。点击它,再点击下拉菜单里的 Scrape 按钮,开始我们的数据抓取。

这时候你会跳到另一个面板,里面有两个输入框,先别管他们是什么,全部输入 2000 就好了。

点击 Start scraping 蓝色按钮后,会跳出一个新的网页,Web Scraper 插件会在这里进行数据抓取:

一般弹出的网页自动关闭就代表着数据抓取结束了,我们点击面板上的 refresh 蓝色按钮,就可以看到我们抓取的数据了!

在这个预览面板上,第一列是 web scraper 自动添加的编号,没啥意义;第二列是抓取的链接,第三列就是我们抓取的数据了。

这个数据会存储在我们的浏览器里,我们也可以点击 Sitemap top250 下的 Export data as CSV,这样就可以导出成 .csv 格式的数据,这种格式可以用 Excel 打开,我们可以用 Excel 做一些数据格式化的操作。

这里爬取了豆瓣电影TOP250 的第 1 页数据(也就是排名最高的 25 部电影),

下面讲解如何抓取所有的电影名。

抓取 多页 数据

https://wwwblogs/web-scraper/p/web_scraper_douban_top250_movie.html

链接分析。先看看第一页的豆瓣网址链接:https://movie.douban/top250?start=0&filter=

  1. https://movie.douban 这个很明显就是个豆瓣的电影网址,没啥好说的
  2. top250 这个一看就是网页的内容,豆瓣排名前 250 的电影,也没啥好说的
  3. ? 后面有个 start=0&filter= ,根据英语提示来看,好像是说筛选(filter),从 0 开始(start)

再看看第二页的网址链接,前面都一样,只有后面的参数变了,变成了 start=25,从 25 开始;

我们再看看第三页的链接,参数变成了 start=50 ,从 50 开始;

分析 3 个链接我们很容易得出规律:

  • start=0,表示从排名第 1 的电影算起,展示 1-25 的电影
  • start=25,表示从排名第 26 的电影算起,展示 26-50 的电影
  • start=50,表示从排名第 51 的电影算起,展示 51-75 的电影
  • …...
  • start=225,表示从排名第 226 的电影算起,展示 226-250 的电影

规律找到了就好办了,只要技术提供支持就行。随着深入学习,你会发现 Web Scraper 的操作并不是难点,最需要思考的其实还是这个找规律。

控制链接参数翻页

Web Scraper 针对这种通过超链接数字分页获取分页数据的网页,提供了非常便捷的操作,那就是范围指定器

比如说你想抓取的网页链接是这样的:

  • http://example/page/1
  • http://example/page/2
  • http://example/page/3

你就可以写成 http://example/page/[1-3],把链接改成这样,Web Scraper 就会自动抓取这三个网页的内容。

当然,你也可以写成 http://example/page/[1-100],这样就可以抓取前 100 个网页。

那么像我们之前分析的豆瓣网页呢?它不是从 1 到 100 递增的,而是 0 -> 25 -> 50 -> 75 这样每隔 25 跳的,这种怎么办?

  • http://example/page/0
  • http://example/page/25
  • http://example/page/50

其实也很简单,这种情况可以用 [0-100:25] 表示,每隔 25 是一个网页,100/25=4,爬取前 4 个网页,放在豆瓣电影的情景下,我们只要把链接改成下面的样子就行了;

https://movie.douban/top250?start=[0-225:25]&filter=

这样 Web Scraper 就会抓取 TOP250 的所有网页了。

抓取数据

解决了链接的问题,接下来就是如何在 Web Scraper 里修改链接了,很简单,就点击两下鼠标:

1.点击 Stiemaps,在新的面板里点击 ID 为 top250 的这列数据:

2.进入新的面板后,找到 Stiemap top250 这个 Tab,点击,再点击下拉菜单里的 Edit metadata

3.修改原来的网址,图中的红框是不同之处:

修改好了超链接,我们重新抓取网页就好了。操作和上文一样,我这里就简单复述一下:

  1. 点击 Sitemap top250 下拉菜单里的 Scrape 按钮
  2. 新的操作面板的两个输入框都输入 2000
  3. 点击 Start scraping 蓝色按钮开始抓取数据
  4. 抓取结束后点击面板上的 refresh 蓝色按钮,检测我们抓取的数据

如果你操作到这里并抓取成功的话,你会发现数据是全部抓取下来了,但是顺序都是乱的。

我们这里先不管顺序问题,因为这个属于数据清洗的内容了,我们现在的专题是数据抓取。先把相关的知识点讲完,再攻克下一个知识点,才是更合理的学习方式。


 

3、浏览器 自动化 Automa

Automa 是一款低代码/无代码的浏览器扩展,用于进行浏览器自动化操作:自动填写表格、执行重复性任务、截图、抓取网站数等。 Automa 的文档。

Chrome:https://kutt.appinn/wvcmQD
官网:https://kutt.appinn/GwZXEr
GitHub:https://kutt.appinn/tmpQjO

在 Automa,每一个完整的动作被叫做一个 Workflow,而每一个条件则叫 Block,只需要把几个 Block 组合起来,就变成了 Workflow。

一般功能

  • 触发块
  • 延时块
  • 导出数据块
  • 重复块
  • HTTP 请求块
  • 循环数据块
  • 块组
  • 剪贴板块
  • 插入数据块

浏览器功能

  • 激活标签页块
  • 新标签页块
  • 新窗口块
  • 代理块
  • 返回/前进块
  • 关闭标签页/窗口块
  • 截图块
  • 处理对话框块
  • 处理下载块

网络功能

  • 点击块
  • 获取文本块
  • 链接块
  • 从元素中获取指定属性的值
  • 表单块
  • Javascript 块
  • 触发事件块
  • 上传文件块

在线服务

  • Google Sheets 块

只需要将这些块组合起来就可以了。至于具体能干什么,目前有一些在线的 Workflows 可以体验,但的确没什么创意,安装量第一的 Workflow 居然是一个搜索演示,就是帮你搜索几个莫名其妙的关键词,让你看着:

本文标签: 爬虫插件浏览器chromeAutoma