使用requests模块的网络编程
2024-08-31 14:03:22
python操作网络,也就是打开一个网站,或者请求一个http接口,本篇是介绍使用request模块的使用方式。
在使用requests模块之前需要先安装,在cmd中输入:pip install requests 即可。以下是各种接口的访问操作:
1)、发get请求
url = 'http://api.nnzhp.cn/api/user/stu_info' #接口的URL
data = {'stu_name':'小黑'} #请求数据,就是请求接口需要的参数,这个需要看具体的接口说明
req = requests.get(url,params=data) #发get请求
print(req.json()) #字典 也就是请求接口返回的结果
2)、发post请求
url = 'http://api.nnzhp.cn/api/user/login' #接口的URL
data = {'username':'niuhanyang','passwd':'aA123456'} #请求数据
req = requests.post(url,data) #发送post请求
print(req.json()) #请求接口返回的结果
3)、入参是json类型的
import random
phone=random.randint(10000000000,99999999999) #随机生成11位手机号码,在json里面使用
url='http://api.nnzhp.cn/api/user/add_stu'
data = {
"name":"小1",
"grade":"天蝎座",
"phone":phone,
"sex":"男",
"age":28,
"addr":"河南省济源市北海大道32号"
}
req = requests.post(url,json=data)
print(req.json())
4)、添加cookie
url = 'http://api.nnzhp.cn/api/user/gold_add'#接口地址
data = {'stu_id':468,'gold':10000}#请求参数
djl = {'niuhanyang':'337ca4cc825302b3a8791ac7f9dc4bc6'}#cookie
req = requests.post(url,data,cookies=djl)#发送post请求
print(req.json())
5)、添加header
nzhp.cn/api/user/all_stu'
header = {
'Referer':'http://api.nnzhp.cn/'
}
req = requests.get(url,headers=header)#发送请求
print(req.json())
6)、上传文件
url= 'http://api.nnzhp.cn/api/file/file_upload'#接口地址
data = {
'file':open(r'C:\Users\bjniuhanyang\Desktop\图\6bd9026dt935575932465&690.jpg','rb')
}#上传图片,图片时二进制,需要使用'rb'模式
req= requests.post(url,files=data)
print(req.json())
7)、下载文件
url = 'http://up.mcyt.net/?down/46779.mp3'#下载文件的地址
req = requests.get(url)#发送get请求
fw = open('aaa.mp3','wb')#图片使用‘wb’模式
fw.write(req.content)
以上举例说明7种接口的访问方式。
最新文章
- 【转载】4412开发板嵌入式QtE应用开发环境搭建
- Java调用Linux命令
- Noi2011 阿狸的打字机
- Linux 下 netbeans 字体抗锯齿正解
- Android俄罗斯方块AI设计文档
- LAMP平台搭建菜鸟入门级实验
- JavaScript text highlighting JQuery plugin
- eclipse安装spring和hibernate插件经验
- Scrum流程
- Golang学习 - reflect 包
- 专家谈国产CPU最新发展态势:需强化标准建设(很全面)
- Counting Squares_hdu_1264(矩阵).java
- PHP批量审核ajax jquery
- 向mysql添加新用户并分配权限
- 浅谈hibernate+入门实例
- 利用python抓取页面数据
- 泡泡堂BNB[ZJOI2008]
- C语言数组一种巧妙的使用方式
- javascript从作用域到闭包-笔记
- .NET拾忆:FormData文件上传
热门文章
- Visual Studio Team Services使用教程【2】:添加团队成员
- FreeNOS学习3——了解目录结构和Main函数
- AI炼丹 - 深度学习必备库 numpy
- 0019 盒子模型(CSS重点):边框、内外边距、布局稳定性、PS
- spring boot(三)Junit 测试controller
- windows下PostgreSQL 安装与配置
- 《面试宝典》 2019年springboot面试高频题(java)
- 洛谷$P4249\ [WC2007]$剪刀石头布 网络流
- 洛谷$P$3327 约数个数和 $[SDOI2015]$ 莫比乌斯反演
- $Noip2013/Luogu1966$ 火柴排队 贪心+离散化+逆序对