一.爬虫介绍
1.什么是爬虫?
爬虫可以看作是网络中的一只蜘蛛,它将重要的数据进行爬取然后对数据进行清洗,转换成自己需要的
2.爬虫简略设计思路
访问指定要爬取的url(url通常来说就是WEB地址,也就是我们俗称的“网址”,访问url就需要用到python中一个很重要的库:requests)
提取网页中需要的数据(这部分就需要网页解析库BeautifulSoup和xpath语法 )
将提取到的数据保存到本地(通常保存的格式就是txt和csv,用csv不用excel的原因后面我们再细说)
二.robots.txt协议
人称君子协议,防君子不防小人
规定了网站中哪些数据是可以被爬取的、哪些网站是不可以被爬取的。
例如:查看百度的robots.txt协议:(输入网址“https://www.baidu.com/robots.txt”),如图所示:
三.实战操作:爬取吾爱破解论坛logo
1.打开论坛,找到论坛logo所在位置
2.我们点击鼠标右键选择检查,或者是通过按键盘中的f12键唤出开发者工具
3.刷新网页,找到吾爱破解的网站,然后点击preview,我们发现是有数据的,证明我们可以使用css语法
4.我们点击开发者工具左上角的箭头,讲箭头指向网页中logo的位置
5.然后开发者工具跳转到了Element界面,定位到了logo所在的标签
6.按CTRL+F键,唤出查找框,在框中输入css语法定位目标(id用#号定位,class用.号,其他用空格,相互之间用空格隔开)
注意:class中如果有空格,要将空格删除换为.如:hdc cl,我们要改为hdc.cl
7.我们先导入reques库,是用于访问吾爱破解网站,然后用get方式调用,因为我们不需要提交数据
吾爱破解没有反爬虫,所以我们这里不定义headers了,后面案例讲到的时候,我们再说
我们输出时以文本的形式输出查看
8.导入BeautifulSoup库,导入方式是from bs4 import BeautifulSoup
第八行代码的意思是使用bs4方式,html.text是我们要解析的文本,lxml是解析器
python中的解析器不是只有lxml,但是它是我最推荐大家使用的,也是python官方推荐的
第九行代码就是查找对应bs4语法的内容,第十行就是输出我们查找到的内容
9.我们用bs4解析出来的结果是个列表,所以我们先用循环遍历列表,然后输出遍历列表后内容的src参数
这个就是我们需要的logo网页
10.接下来就是将logo图片保存到本地,我们先继续用requests库访问图片链接
然后用基础篇学到的保存文件with open ,里面第一个参数是文件名,第二个参数是读写方式
因为是图片,属于二进制读写,所以读写方式就是wb,写入的时候写入二进制,所以使用content
这样图片就成功的下载到本地了,可以到运行python文件的文件夹下查看下载的图片
四:后言
这个是个简单的爬虫例子,知识点不多,也不难,总共代码也不到20行,但我还是建议大家亲自动手试一试
最后也感谢大家的观看
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试