python–爬虫
爬虫是什么?
爬虫(网络数据采集)是按照一定的规则、自动抓取网络信息的脚本或者程序;
一、爬虫所需的模块
爬虫之祖utlib
,不论什么模块都是起源于该模块
urlib
库中有几个模块,如下:
requests
:用于请求网址error
:异常处理parse
:用于修改拼接等robotparse
:用于判断该网站是否可以爬
二、模块的安装
- 可视化安装
- Terminal安装
三、request的使用
- 导入模块
- 发送请求
- 打印状态码–判断该网址能否访问
# 导入模块
import requests
URL = 'https://pvp.qq.com/web201706/index.shtml'
# 向B站发送请求获取网站服务器的相应结果
resp = requests.get(url=URL)
print(resp)# <Response [200]>
# 打印状态码
print(resp.status_code)
status_code–状态码 判断服务器和网页状态
200–表示程序和服务器正常通信
403–表示服务器理解客户端的请求,但是拒绝了客户端的请求
404–网页丢失
500–服务器奔溃
# 如果网页发生乱码,只需要根据页面指定的编码方式解码即可
# requests默认使用ISO-8859-1的编码(ASCII),也能够使用页面服务器所指定的编码方式
# 如果页面中么有charset='编码'---response.encoding=None
resp.encoding='gbk'
# text--查看页面源代码
print(resp.text,type(resp.text))
# content--页面源代码(二进制形式(字节))
# 二进制一般应用是音频视频
print(resp.content)
四、requests图片下载
- 导入模块
- requests发送请求
- 判断网址是否能够访问,能的话将图片保存,不能的话打印状态码
import requests
# 图片
URL='https://game.gtimg.cn/images/yxzj/coming/v2/skins//image/20220623/16559919637365.jpg'
# 视频
URL1='https://video.pearvideo.com/mp4/adshort/20220614/cont-1765337-15895934_adpkg-ad_hd.mp4'
# 链接---开发者工具中
response=requests.get(url=URL1)
if response.status_code==200:
print(response.content)
# 将图片写入本地
file=open('img/1.mp4', 'wb')
file=open('img/1.jpg', 'wb')
file.write(response.content)
file.close()
else:
print(f'状态码{response.status_code}')