1. Requests简介
Requests模块是一个用于网络访问的模块,其实类似的模块有很多,比如urllib,urllib2,httplib,httplib2,他们基本都提供相似的功能,那为什么Requests模块就能够脱引而出呢?可以打开它的官网看一下,是一个“人类“用的http模块。那么,它究竟怎样的人性化呢?相信如果你之前用过urllib之类的模块的话,对比下就会发现它确实很人性化。
2.安装requests
注意首先确保本机安装pip
Pip install requests
GET方式使用
import requests url="https://www.baidu.com" response=requests.get(url) response.encoding='utf-8' print(response.text) print(response.cookies) print(response.content)
GET参数使用方式
import requests url='http://httpbin.org/get' data={ 'name':'zhangsan', 'age':'25' } response=requests.get(url,params=data) print(response.url)
print(response.text)
JSON数据使用方式
import requests import json response = requests.get("http://httpbin.org/get") print(type(response.text)) print(response.json()) print(json.loads(response.text)) print(type(response.json()))
json.load()是用来读取文件的,即,将文件打开然后就可以直接读取
header的作用 没有header的情况下访问知乎 报错400
如果想访问就必须得加headers信息。
import requests url = 'https://www.zhihu.com/' headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36' } response = requests.get(url,headers=headers) response.encoding = "utf-8" print(response.text)
------------------------------------------
基于POST请求使用
import requests url='http://httpbin.org/post' data={ 'name':'jack', 'age':'23' } response=requests.post(url,data=data) print(response.text)
响应:
import requests response = requests.get("http://www.baidu.com") #打印请求页面的状态(状态码) print(type(response.status_code),response.status_code) #打印请求网址的headers所有信息 print(type(response.headers),response.headers) #打印请求网址的cookies信息 print(type(response.cookies),response.cookies) #打印请求网址的地址 print(type(response.url),response.url) #打印请求的历史记录(以列表的形式显示) print(type(response.history),response.history)
引用:https://www.cnblogs.com/lei0213/p/6957508.html