龙空技术网

python爬虫-07-使用request发送get和post请求

运维家 153

前言:

当前看官们对“pythonpost数据”大约比较关注,小伙伴们都想要学习一些“pythonpost数据”的相关文章。那么小编同时在网摘上收集了一些关于“pythonpost数据””的相关内容,希望兄弟们能喜欢,姐妹们一起来了解一下吧!

上面我们介绍了urllib模块的使用,有一个比urllib更加“人性化”的模块,那就是requests库,使用它可以更加便捷的发起各种请求。

1、安装requests

pip install requests
2、python发送get请求(1)发送简单请求
import requestsjier = requests.get(';)print(jier.text)

输出为一个网页的html代码;

(2)添加Header

import requestsHeader = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}jier = requests.get(';, headers=Header)print(jier.text)

输出为一个网页的html代码;

(3)添加请求参数

import requestsjier = {'wd': '运维家的博客'}Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}suner = requests.get(';, params=jier, headers=Header)print(suner.text)

输出为一个网页的html代码;

(4)查看响应内容

text:这个是str的数据类型,是requests库将response.content进行解码的字符串,当有时候text放回的格式乱码的时候,可以采用下面的content的方式指定编码格式;

content:这个是直接从网络上面抓取的数据,没有经过任何解码,所以是一个bytes类型;

import requestsjier = {'wd': '运维家的博客'}Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}suner = requests.get(';, params=jier, headers=Header)# 使用textprint(suner.text)# 使用contentprint(suner.content.decode('utf-8'))

输出为一个网页的html代码;

(5)查看完整URL

import requestsjier = {'wd': '运维家的博客'}Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}suner = requests.get(';, params=jier, headers=Header)print(suner.url)

输出内容如下:

(6)查看响应头字符编码
import requestsjier = {'wd': '运维家的博客'}Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}suner = requests.get(';, params=jier, headers=Header)print(suner.encoding)

输出内容如下:

utf-8
(7)查看响应码
import requestsjier = {'wd': '运维家的博客'}Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}suner = requests.get(';, params=jier, headers=Header)print(suner.status_code)

输出内容如下:

200
3、python发送post请求(1)发送简单请求
import requestsjier = requests.post(';)print(jier.text)

输出结果为一个网页的html代码;

(2)发送带参数的请求

这里我们再次使用httpbin网站,这次就不介绍如何查看方法了,之前说过好几次了,直接用。

import requestsTest_Url = ';Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}Data = {'name': 'yunweijia', 'type': 'gongzhonghao'}jier = requests.post(Test_Url, headers=Header, data=Data)print(jier.text)

输出结果如下:

{  "args": {},   "data": "",   "files": {},   "form": {    "name": "yunweijia",     "type": "gongzhonghao"  },   "headers": {    "Accept": "*/*",     "Accept-Encoding": "gzip, deflate",     "Content-Length": "32",     "Content-Type": "application/x-www-form-urlencoded",     "Host": "httpbin.org",     "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",     "X-Amzn-Trace-Id": "Root=1-62822e2b-5a2c632c1d88fe0f597edd6f"  },   "json": null,   "origin": "223.71.97.14",   "url": ";}

其他的参数和GET一样,直接使用即可,这里就不再一一举例了。

4、Requests使用代理(1)未使用代理之前

import requestsTest_Url = ';Header = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}jier = requests.post(Test_Url, headers=Header)print(jier.text)

输出信息如下:

{  "args": {},   "data": "",   "files": {},   "form": {},   "headers": {    "Accept": "*/*",     "Accept-Encoding": "gzip, deflate",     "Content-Length": "0",     "Host": "httpbin.org",     "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",     "X-Amzn-Trace-Id": "Root=1-62823bc1-6bcdae190bb802f8616c3032"  },   "json": null,   "origin": "223.71.97.14",   "url": ";}
(2)使用代理之后

剩余内容请转至VX公众号 “运维家” ,回复 “170” 查看。

------ “运维家” ,回复 “170” ------

------ “运维家” ,回复 “170” ------

------ “运维家” ,回复 “170” ------

linux卸载硬盘,win7共享linux,linuxgdal安装,Linux7忘记密码,linux怎么进入文件的子目录,高通开源代码linux,linuxusr大小,重启服务器的linux命令,linux的jdk怎么安装啊;

linuxtar文件打不开,linux常用状态检测,linux成功开机界面,linux七种文件,linux命令,Linux+删除数据的命令,linux自动监听重启服务器,如何快速担任linux运维,Linux返回到波浪线,linux大数据架构搭建。

标签: #pythonpost数据