无需代码如何爬虫
突然觉着有点必要学习以下爬虫,用爬虫更好的观测舆情。
神奇 : Chrome 的 Web scraper 插件
抓取步骤
以抓取 Knowyourself 公众号标题为例
- Create site map
- Sitemap name (可随便输入): knowyourslef
- Start URL : 复制当前抓取网页的网址
-
点击Create Sitemap
-
点击 Add new selector
- Id: 随便输入
- Type : 选择抓取数据类型
- selector 点击 Select
- 网页上会出现绿色区域,点击标题,多点几个标题,直到同类型全部从绿色变成红色。
- 点击 Done selecting
- 点击 data preview ,可以看到选中的数据
- 点击Save Selector
- 选择 sitemap下的 Scrape , Page load delay可以根据网速设置更长的时间 (特别是在多页面选择抓取数据的时候)
- 点击 Start scraping,会出现弹框,代表正在下载。
- 数据抓取完毕,点击 export data as CSV ,就可以下载全部数据啦~
如何抓取多页面
-
依然是之前这个例子,这次我们选择 Edit Metadata
-
观察每一个分页的URL规律,我们发现 page=1 这个字段是有规律的。因此我们将URL里面替换成Page=[1-4]
- 点击save sitemap
- 我们可以修改request interval 和page load delay的数据,以确保每一页都有时间下载完整被抓取。
- 点击Start Scraping
- 这时候爬虫会自己跳转页面,完成后会显示所有数据和前面一样。
关于特殊的分页
豆瓣电影250第一页:https://movie.douban.com/top250?start=0&filter=
但如果像是豆瓣电影250这种页面如何赚取呢,我们可以看到豆瓣250的页面Start是一共到225,一个页面有25个电影,于是可以将数据写成0-225:25
https://movie.douban.com/top250?start=[0-225:25]&filter=
抓取多个数据
创建一个type是 element 的type 选中所有的数据包裹
注意在root 的 elements下分别创建username和description的选择器,不要选中multiple ,因为之前选中过了
Username 和 description 选择器应该在elements 下面
整个数据的关系可以在sitemap 下的selector graph里面看到
相关学习文章