一,爬虫
- 网络爬虫:按照一定的规则自动抓取网络信息的脚本
- 爬虫的流程:
1)发送请求
2)获取响应内容
响应蕴含的规律:
1XX:表示请求被服务器接收,可以继续处理
2XX:表示请求成功被服务器接收,理解,接受
3XX:表示后续操作才能完成这个请求
4XX:表示请求含有语法错误或者无法被执行,意味着请求错误
5XX:服务器在处理某个正确的请求时发生错误,意味着服务器错误
3)解析内容
HTML就用正则表达式解析,Json就用Json对象解析,二进制数据则保存数据进一步解析
4)保存数据 - def def用来声明Python方法,:用来写接下来的方法体
eg: def demo(参数):
print()
二,requests库
- 如何添加库
方法1:文件添加
方法2:直接引用库名,鼠标放在上面,点击出现的小灯泡,添加
方法3:直接点击终端,输入命令或者打开电脑命令面板,输入命令来添加(这两个是一个东西)
- requests库
requests有六种请求方式:GET,POST,HEAD,PUT,OPTIONS和DELETE
三,Urllib库
- 这个库的作用就是模拟HTTP发送请求,这个库负责打开URL和HTTP协议
四,正则表达式
-
正则表达式是对字符串操作的逻辑公式,它创造一组规则,用来表达对字符的一种过滤逻辑
-
python的正则表达式封装在re库中
-
re.FindAll(‘字符’,参数)方法(这个方法的意思是在参数里面执行字符,将需要的东西选出来),
字符 描述
\w 匹配字母,数字及下划线
\d 匹配任意数字
. 匹配任意字符,除了换行符
‘*’ 匹配0个或多个表达式
如下图
五,自动换行 -
六,爬虫实践 -
爬虫的头:爬虫抓取数据时,必须要有一个目标的URL地址,这个请求的URL地址就有请求头,请求体,而我们去进行爬取的过程是没有请求头的,这时候网页的反爬虫机制就会启动,所以说我们需要模拟一个请求头,这样我们就能够爬到数据了。
-
URL的背后:我们在进行URL操作的时候,它不只是发送一个URL地址给数据库,背后有很多的操作,我们可以通过点击电脑键盘的F12,进行查看,如下图。
-
如果我们要头部文件,我可以直接在Network进中找到
-
接下来试一下爬取豆瓣读书的数据,入下图,假设我要爬取作妖这个数据
七,Beautiful Soup -
概念:Beautiful Soup库是一个可以从HTML或者XML文件提取数据的Python库,它可以很好的处理不规范的标记并生成剖析树
-
安装:这个库需要在项目中导入bs4
-
cmd命令:pip install beautifulsoup4 就可以安装Beatiful Soup 4。