python网络库requests的get使用及数据解析

python网络库requests使用超级简单,两三行代码的事情,具体如下:

get请求:

url = 'https://service.paper.meiyuan.in/api/v2/columns/flow/5c81087e6aee28c541eefc26?page=1&per_page=10' 
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"}
respond = get(url=url, headers=headers)

ok,就这样,就完成了 一次get请求,如果请求的参数随时会变化,你还可以这样:

url = 'https://service.paper.meiyuan.in/api/v2/columns/flow/5c81087e6aee28c541eefc26'
params = {}
params["page"] = 1
params["per_page"] = photoCount
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"}
respond = get(url=url, params=params, headers=headers)

这就是一个完整的标准的get请求(get请求三要素:接口url,参数params,请求头文件headers)。

请求成功与否的判断,我们要用到请求状态码status_code:

    if respond.status_code==200:
    	# TODO:表示请求成功

对请求到的response做数据解析: requests的数据解析有两种方式:

一、使用json库的loads()方法:

jsonData = loads(respond.text)

这样的到的photoData 对象就是一个解析后的对象,然后就可以使用了

二、使用requests自带的json解析:

jsonData = respond.json();

这种方式得到的jsonData与方式一到的jsonData是完全一样的。然后就可以正常获取值了。

post请求:

首先还是请求接口url和请求参数params的处理:

url = 'https://service.paper.meiyuan.in/api/v2/columns/flow/5c81087e6aee28c541eefc26'
params = {}
params["page"] = 1
params["per_page"] = photoCount

然后是发起请求:

response = requests.post(url , params=params)

这样就完成了一次post请求,一行代码搞定,超级简单。

关于更多request的更多用法在这里:Python-requests库的用法

原创文章 118 获赞 149 访问量 9万+

猜你喜欢

转载自blog.csdn.net/haoyuegongzi/article/details/104923205
今日推荐