学习爬虫有一小段时间了,于是决定把自己学爬虫时所学的,写过的代码以及看过的文档记录下来,权当小结。第一次写这些,如果有错误,请多指教。
首先我们需要了解一下什么是爬虫。
根据百度百科上给出的定义,” 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。“简单来说,爬虫类似手动下载网页信息,比如小说、歌曲。说到这,或许会有疑问,既然这样,干嘛还去敲代码,直接人工处理不好吗?话是这么说,但如果下载的不是一篇两篇小说,一首两首歌曲呢,需要将整个网站的信息全部爬取下来,这个时候人工操作显得有些力不从心了。
学习简单的爬虫应该做些什么前期准备,我们来梳理一下:
- 首先我们需要熟悉一门编程语言,在这里我们以Python为例,我们需要简单的了解其语法,掌握列表、字典等数据结构的用法,for循环,文件读取存储等操作,这些将是我们写的爬虫在获取信息,处理信息,存储信息需要用到的知识。
- 熟悉网页的基础知识,不需要很精通,但需要有个了解。这里只是简单介绍,想了解更多可以查看我附在介绍后的文档链接
URL:(Universal Resource Locator即统一资源定位符)URL是对能从Internet上得到资源的位置和访问方法的一种简洁的表示。URL给资源的位置提供一种抽象的识别方法,并用这种方法给资源定位,
使得系统得以对资源(指Internet上可以访问的任何对象,包括文件目录、文件、文档、图像等,以及其他任何形式的数据)进行各种操作,如存储、更新、替换和查找其属性。
URL的一般形式为:
<URL的访问形式>://<主机>:<端口>/<路径>
左边的<URL的访问形式>主要有文件传送协议(FTP)、超文本传送协议(HTTP)等方式,常见形式为HTTP,下面将会介绍到。<主机>一项是必须的,<端口>和<路径>有时侯可省略。例如:http 😕/http://baidu.com
HTTP:(HyperText Transfer Protocol 即超文本传输协议)HTTP是一个简单的请求——响应协议,通常运行在TCP之上,它指定了客户端可能发送给服务器的消息,以及得到的响应。我们可以简单的了解其发包和收包的概念(GET/POST)
HTML:(HyperText Markup Lanhguage 即超文本标记语言)HTML是一种制作万维网页面的标准语言,它消除了计算机信息交流的障碍。HTML定义了许多用于排版的”标签“,各种标签嵌入到万维网的页面就构成了HTML文档。我们所要爬取的页面也基本是HTML网页。所以对于HTML中的一些标签需要有所了解,同时也可了解用来控制网页样式布局的CSS,方便以后的解析网页。
- 掌握抓包分析工具
一种方法是通过谷歌或者火狐浏览器自带的开发者工具,F12或者鼠标右键检查,可以快速方便的定位网页元素位置
另一种方法是通过抓包分析工具 Fiddler,我也不是很经常用,一般浏览器F12+F5搞定,关于Fiddler的用法可以百度。
- 正则表达式
用来提取网页信息的表达式,可能会觉得有些繁琐,但学会一个通配模式后,就会觉得正则其实挺好用的。另外用正则表达式的时候,如果直接通过代码测试正则表达式的可行性,费时间且麻烦,
- 最后就是一些爬虫所需的Python库,大家可以直接在命令行通过pip安装,用PyCharm的可以在Setting中安装。
1.requests 用来请求网页的模块,与之相同作用的还有urllib,不过我更习惯requests requests中文文档
2.BeautifulSoup 用来解析网页的模块,在小型爬虫中具有强大作用,且简单易学。配合requests使用便可轻松爬取并解析网页。BeautifulSoup4.4.0文档
看上去这些内容有点多,但这通过几个小项目还是很好上手的。当然,爬虫可不止这些简单的内容,真正有难度的便在于针对各种反爬取措施所做的策略了,而这,也会在后续通过简单实战的方式向大家介绍,无论是文档还是视频,都只是我们了解爬虫知识的前提,真正使我们掌握的,只有实战,通过自己动手编写代码,相信大家能够很快掌握爬虫的基本使用方法。
这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!
CSDN大礼包:全网最全《全套Python学习资料》免费分享🎁
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
1️⃣零基础入门
① 学习路线
对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
② 路线对应学习视频
还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
③练习题
每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
因篇幅有限,仅展示部分资料
2️⃣国内外Python书籍、文档
① 文档和书籍资料
3️⃣Python工具包+项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
②Python实战案例
光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
③Python小游戏源码
如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
4️⃣Python面试题
我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
5️⃣Python兼职渠道
而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓