数据爬取
本文已参与「新人创作礼」活动,一起开启掘金创作之路。
引言:这节课简要的讲了网络爬虫的作用,并提供了简单案例,着重强调了法律风险。
由于现在网页越来越复杂,实际操作中需要更多的细节,可以看网络爬虫专门的课程。
本章的数据爬取给予了一个大概的知识指引,具体的代码学习还需要额外下功夫哦。
出处:https://www.bilibili.com/video/BV1JM4y137kK?spm_id_from=333.999.0.0
参考:https://www.bilibili.com/read/cv13762906?spm_id_from=333.999.0.0
推荐爬虫视频:https://www.bilibili.com/video/BV1Ja411c74f/?spm_id_from=333.788.b_636f6d6d656e74.41
一、网页爬虫和数据抓取
- 网页爬虫:指对整个网页的全部数据进行爬取并收集,常用于搜索引擎
- 数据抓取:指对特定网页的某些特定类型的数据感兴趣,整理成一张table
二、数据抓取的工具
- curl:最传统的工具,直接下载某个特定网页,但是很容易失效。
- headless浏览器:比如 selenium,可以很好的模拟浏览器的操作,类似于一个没有用户界面的浏览器。
- 使用多个IP地址:如果频繁的抓取数据,网站管理员可能会给IP返回404页面,可以通过购买多个云服务提供商的IP来解决,比如AWS。
三、数据抓取的方法
1.爬取文本
(1)方法
- 获取网页
使用headless浏览器下载html文件,需要使用一些软件来解析网页。 - 解析/操作网页
比如Python中的beautifulsoup用来解析网页,以及提取信息。 - 定位数据位置
使用浏览器的inspector (F12) 来检查网页元素,确定数据在网页上的位置。 - 最终提取出结构化的信息。\
(2)花销
使用云服务器优先考虑内存大小,CPU和网络带宽并不关键。
2.爬取图片
(1)方法
抓取图片和抓取文字的步骤基本一样,但是需要考虑图片的存储开销。
(2)花销
通常图片的存储成本大,可以在存储的时候设置图片尺寸稍微小一点。
四、法律问题
-
避免爬取私人信息
-
避免爬取版权信息
-
遵守网络服务条例