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实现 这是一个极其简单 ...
随机推荐
- kotlin学习(6)运算符重载和其他约定
约定 在Kotlin中,可以调用自己代码中定义的函数,来实现语言结构.这戏功能与特定的函数命名相关,例如,在你的类中定义了一个名为plus的特殊方法,那么按照约定,就可以在该类的实例上使用 + 运算符 ...
- loli的测试-2018.12.9
模拟赛-2018.12.9 这是NOIP之后第一次模拟赛...但是考的比较悲惨. 非常喜欢写考试总结,不知道为什么... T1:https://www.luogu.org/problemnew/sho ...
- SpringAOP用到了什么代理,以及动态代理与静态代理的区别
spring aop (面向切面)常用于数据库事务中,使用了2种代理. jdk动态代理:对实现了接口的类生成代理对象.要使用jdk动态代理,要求类必须要实现接口. cglib代理:对类生成代理对象. ...
- 雷电模拟器 v3.71绿色版
目录 1. 按 2. 介绍 3. 下载地址 1. 按 安卓模拟器目前的市场基本上稳定了,逍遥.夜神.雷电,用的人都很多,网易mumu从阴阳师时代就被大家熟知,腾讯手游助手也是随着吃鸡游戏而火,这两个模 ...
- Schematic - "DesignEntry 30 ERROR Instance referencing symbol is out of date"
Schematic - "DesignEntry 30 ERROR Instance referencing symbol is out of date" Descript ...
- 大数据数据库HBase(二)——搭建与JavaAPI
一.搭建 1.选择一台没有ZK的机器(HBase自带ZK,可能会导致冲突) 2.选择版本2.0.5的HBase 3.解压HBase2.0.5 4.配置HBase的HBASE_HOME和path 5.修 ...
- SpringBoot之集成数据库
一.集成 MySQL 数据库 1.1 配置 MySQL 添加依赖 <dependencies> <!--Spring 数据库相关依赖--> <dependency> ...
- 8.docker的系统资源限制
一. 概述 默认docker容器使用的memory资源和CPU资源是没有限制的,但是我们可以在docker run的时候通过选项去限制,具体参考官方文档. [root@node1 ~]# docker ...
- 推荐一些CSS命名规范
常用的CSS命名规则 头:header内容:content/container尾:footer导航:nav侧栏:sidebar栏目:column页面外围控制整体佈局宽度:wrapper左右中:left ...
- MySQL基础day03 存储引擎和外键MySQL 5.6
MySQL基础day03_存储引擎和外键-MySQL 5.6 外键的条件: 1,表的存储引擎为innodb存储引擎 2,表中外键字段的类型要与参考表的字段类型一致 3,外键字段要是索引类型中的一种 M ...