requests库的安装:
ubuntu和windows下安装requests库:pip install requests
requests的介绍:
Requests是一个优雅而简单的Python HTTP库
requests的文档:
中文版:http://cn.python-requests.org/zh_CN/latest/
英文版:http://docs.python-requests.org/en/master/api/
requests的基本用法:
Get请求:
(一)创建一个基本实例
import requests
response = requests.get('https://httpbin.org/get')#创建一个基本的get请求实例
print(response.text)
这是返回的运行结果截图
(二)在请求中带参数
import requests
data = {
'name':'Dacyuan',
'age':'23'
}
response = requests.get('https://httpbin.org/get',params=data)#带参数
print(response.text)
网页的返回类型实际上是 str 类型,但是它很特殊,是 JSON 格式的 所以,如果想直接解析返回结果,得到一个字典格式的话,可以直接调用 json ()方法。
(三)两个小Demo:爬取知乎的网页,爬取二进制数据。
import requests
headers = {
'User-Agent':'Mozilla/5.0(Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'
}
response = requests.get('https://www.zhihu.com/explore',headers=headers)
print(response.text)
返回的结果
注:如果不添加headers字段会显示错误(这是因为知乎禁止爬取),加了headers字段后,其中包含了User-Agent字段信息,也就是浏览器标识信息,这样就阔以爬取知乎的网页了。如图
--------------------------------------------------------
import requests
response = requests.get('https://github.com/favicon.ico')
print(response.content)#response.conten获取的二进制数据
这是返回的结果为二进制数据。
Post请求:
和Get请求类似:
import requests
data = {'name':'Dacyuan','age':'23'}
args={'name':'Dacyuan','age':'23'}
response = requests.post('http://httpbin.org/post',data=data,params=args)
print(response.text)
运行后的截图:
requests的高级用法: