python数据爬虫:requests
2019-08-04 本文已影响2人
小刘的老刘
人生苦短,我用Python
在上一篇文章:《python数据分析:碰到喜欢的人该怎么办?(上)》里,利用requests、BeautifulSoup等工具包,这篇文章就介绍一下requests。
request的意思是请求,requests这个工具包的作用就是请求访问网页。直接进入正题。
1. 如何安装requests
首先先检查一下有没有安装,直接在cmd下输入:pip show requests
如果没有安全直接输入:pip install requests
**2. 发送url请求
- 直接访问
还是以上次B站网址为例子
import requests
u = 'https://www.bilibili.com/video/av60374658'
r = requests.get(u)
print(r)
访问成功
这里的<Response [200]> 是访问的响应状态。200 是状态码,表示成功。
状态码有以几种:
1. 1XX:临时响应。
2. 2XX:成功。服务器已成功处理请求。表示服务器提供了请求页面。
3. 3XX:临时移动。服务器目前从不同位置的网页响应请求,类似跳转网页。
4. 4XX:未找到。服务器找不到请求的网页。
5. 5XX:服务器错误。
-
响应头
响应头 -
网页编码
网页编码:r.encoding
网页真实编码:r.apparent_encoding
我们在解析页面的时候可能会碰到网页乱码的情况,一般这种情况就是网页编码和真实编码不一致,这里直接设置r.encoding = r.apparent_encoding就可以了。
网页编码
3. 错误与异常
由于在爬取数据的时候可能出现连接不上服务器或者解析网页时不能准确识别可能会出现错误异常,我们一般用try...except...语句来处理,在出现异常时跳过异常让爬虫继续进行。
import requests
urls = []#输入你的网址
for u in urls:
try:
requests.get(url = u)
print('网页访问成功!',r)
except:
requests.get(url = u)
print('网页访问失败,网址为',u)
大家可以找一些网址来试一下。