python-网络编程requests模块
urllib模块去请求的确比较麻烦,需要不断的encode和decode;而requests模块就比较方便了,它是基于requests模块开发的第三方模块,安装简单只需要 pip install requests即可。
import requests
url= 'http://127.0.0.1:8080/login'
data = {"username":"cws1235","pwd":123456}
#######get请求
req = requests.get(url,data).json() 返回的是json字典类型,接口返回必须是json才可以
req= requests.get(url,data).text 返回的是字符串
def post_jsonpppp(self): #处理post返回json的请求
还可以拼接请求:
req = requests.get(url+'username=cws12356&pwd=123456')
########post请求
req = requests.post(url,data)
#如果入参是json
data2 = {
"username":'jmy1235',
"real_name":"处长",
"class":"巨蟹座",
"phone":"19312345673",
}
requests.post(url,json=data2).text #发送请求报文是json
##那如果是url里有参数,body里面还有json请求
eg.1
http://127.0.0.1:8080/login?username=niuhanyang&pwd=123456 然后body里还有json
方法有两种:1、拼接 2、在传入一个参数
req=requests.post(url,data2,json=data2)
req=requests.get(url+''?''+"username=hubing&pwd=123456",data2)
####带cookie的
url = "http://127.0.0.1:8000/add_stu2"
data = {"userid":1}
cookie = {"token":"token12345"}
res = requests.post(url,data,cookies=cookie,json=data2).json()#使用cookies参数执行cookie
####添加验证权限的
url="http://127.0.0.1:8000/add_stu2"
data ={'userid':1,"money":9999}
res =requests.post(url,data,auth=('admin','123456')).json()
####带header的
hearder={"tavnxiaofei":"7wei"}
url = "http://127.0.0.1:8000/add_stu2"
res = requests.post(url,json=data2,cookies=cookie,headers=header) .json() #用headers参数,header里面不能有中文
####发送文件
url = "http://127.0.0.1:8000/add_stu2"
s = requests.session()
req_param = '{"belongId": "312","userName": "testss003","password":"pxkj88","captcha":"pxpx","captchaKey":"59675w1v8kdbpxv"}'
res = s.post('http://test.e.fanxiaojian.cn/metis-login-web/auth/login', json=json.loads(req_param))
print(res.json())
print(res.cookies.values())
text的不管返回是不是json都可以
python-网络编程requests模块的更多相关文章
- python网络编程----requests模块
python访问网站可以用标准模块--urllib模块(这里省略),和requests(安装-pip install requests)模块,requests模块是在urllib的基础上进行的封装,比 ...
- python 网络爬虫requests模块
一.requests模块 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求.功能强大,用法简洁高效. 1.1 模块介绍及请求过程 requests模块模 ...
- Python网络爬虫-requests模块
requests模块 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求.功能强大,用法简洁高效.在爬虫领域中占据着半壁江山的地位. 如何使用reques ...
- python网络编程socketserver模块(实现TCP客户端/服务器)
摘录python核心编程 socketserver(python3.x版本重新命名)是标准库中的网络编程的高级模块.通过将创建网络客户端和服务器所必须的代码封装起来,简化了模板,为你提供了各种各样的类 ...
- Python网络爬虫-requests模块(II)
有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: #!/usr/bin/env ...
- python 网络编程--socket模块/struct模块
socket模块: 客户端:CS架构, client -> server 浏览器:BS架构, browser -> server 网络通信本质:传输字节 doc命令查看ip地址:ipc ...
- python网络编程-paramiko模块
paramiko模块 该模块基于SSH用于连接远程服务器并执行相关操作 参考文档 SSHClient 用于连接远程服务器并执行命令 import paramiko #创建SSH对象 ssh = par ...
- python网络编程-socketserver模块
使用socketserver 老规矩,先引入import socketserver 必须创建一个类,且继承socketserver.BaseRequestHandler 这个类中必须重写handle( ...
- 孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块
孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块 (完整学习过程屏幕记录视频地址在文末) 从今天起开始正式学习Python的爬虫. 今天已经初步了解了两个主要的模块: ...
- Python 网络编程(二)
Python 网络编程 上一篇博客介绍了socket的基本概念以及实现了简单的TCP和UDP的客户端.服务器程序,本篇博客主要对socket编程进行更深入的讲解 一.简化版ssh实现 这是一个极其简单 ...
随机推荐
- HNUSTOJ-1257 You are my brother
1257: You are my brother 时间限制: 1 Sec 内存限制: 128 MB提交: 39 解决: 15[提交][状态][讨论版] 题目描述 Little A gets to ...
- python中,a=10.0 b=10.0 a is b 为什么输出是false
>>>a=10.0>>>b=10.0>>>a is bFalse为什么当a=10,b=10时,a is b输出的是True呢? >>& ...
- Redis---Redis与Memcached
4.Redis与Memcached 两者都是非关系型内存键值,主要有以下不同: 数据类型 Memcached仅支持字符串类型,而Redis支持五种不同的数据类型,可以更灵活地解决问题. 数据持 ...
- 执行npm publish 报错:401 Unauthorized - PUT https://registry.npmjs.org/kunmomotest - You must be logged in to publish packages.
前言 执行npm publish 报错:401 Unauthorized - PUT https://registry.npmjs.org/kunmomotest - You must be logg ...
- python 写matlab中的加性高斯白噪声AWGN
定义 原始信号:x 噪声信号:n 信噪比:SNR 信号长度:N def wgn(x, snr): snr = 10**(snr/10.0) xpower = np.sum(x**2)/len(x) n ...
- spring jpa 带参数分页查询(一)
1.写个接口继承JpaRepository @NoRepositoryBean public interface BaseRepository<T,PK extends Serializable ...
- Django【第14篇】:Django之Form组件补充
补充 一.定义的规则 class TeacherForm(Form): #必须继承Form # 创建字段,本质上是正则表达式 username = fields.CharField( required ...
- Quantitative Strategies for Achieving Alpha(一)
1. 怎么构建测试 所有的测试五等分,表明我们的回测的universe被分为五个组,根据我们要测试的公司因子的值. Quintiles provide a clear answer to that q ...
- RSA和AES工具类
AESUtil import com.xxx.common.BssException; import com.xxx.common.constants.CommonConstants; import ...
- Android开发实践:Android.mk模板
关于Android NDK开发的文章已经比较多了,我的博客中也分享了很多NDK开发相关经验和技巧,今天简单写了一个 Android.mk 的示例模板,供初学者参考. 本模板主要给大家示例 Androi ...