python3模块: requests
Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。
发送GET请求
import urllib.requestf = urllib.request.urlopen('http://www.webxml.com.cn//webservices/qqOnlineWebService.asmx/qqCheckOnline?qqCode=424662508')
result = f.read().decode('utf-8')
发送携带请求头的GET请求
import urllib.requestreq = urllib.request.Request('http://www.example.com/')
req.add_header('Referer', 'http://www.python.org/')
r = urllib.request.urlopen(req)result = f.read().decode('utf-8')
更多内容点击查看官方文档
Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,从而使得Pythoner进行网络请求时,变得美好了许多,使用Requests可以轻而易举的完成浏览器可有的任何操作。
- 安装模块
pip3 install requests
- 使用模块
GET请求
# 1、无参数实例import requestsret = requests.get('https://github.com/timeline.json')print(ret.url)
print(ret.text)# 2、有参数实例import requestspayload = {'key1': 'value1', 'key2': 'value2'}
ret = requests.get("http://httpbin.org/get", params=payload)print(ret.url)
print(ret.text)
POST请求
# 1、基本POST实例import requestspayload = {'key1': 'value1', 'key2': 'value2'}
ret = requests.post("http://httpbin.org/post", data=payload)print(ret.text)# 2、发送请求头和数据实例import requests
import jsonurl = 'https://api.github.com/some/endpoint'
payload = {'some': 'data'}
headers = {'content-type': 'application/json'}ret = requests.post(url, data=json.dumps(payload), headers=headers)print(ret.text)
print(ret.cookies)
其他请求
requests.get(url, params=None, **kwargs)
requests.post(url, data=None, json=None, **kwargs)
requests.put(url, data=None, **kwargs)
requests.head(url, **kwargs)
requests.delete(url, **kwargs)
requests.patch(url, data=None, **kwargs)
requests.options(url, **kwargs)# 以上方法均是在此方法的基础上构建
requests.request(method, url, **kwargs)
更多requests模块相关文档点击查看
- Http请求和XML实例
实例:检测QQ账号是否在线
import urllib
import requests
from xml.etree import ElementTree as ET# 使用内置模块urllib发送HTTP请求,或者XML格式内容
"""
f = urllib.request.urlopen('http://www.webxml.com.cn//webservices/qqOnlineWebService.asmx/qqCheckOnline?qqCode=424662508')
result = f.read().decode('utf-8')
"""# 使用第三方模块requests发送HTTP请求,或者XML格式内容
r = requests.get('http://www.webxml.com.cn//webservices/qqOnlineWebService.asmx/qqCheckOnline?qqCode=424662508')
result = r.text# 解析XML格式内容
node = ET.XML(result)# 获取内容
if node.text == "Y":print("在线")
else:print("离线")
实例:查看火车停靠信息
import urllib
import requests
from xml.etree import ElementTree as ET# 使用内置模块urllib发送HTTP请求,或者XML格式内容
"""
f = urllib.request.urlopen('http://www.webxml.com.cn/WebServices/TrainTimeWebService.asmx/getDetailInfoByTrainCode?TrainCode=G666&UserID=')
result = f.read().decode('utf-8')
"""# 使用第三方模块requests发送HTTP请求,或者XML格式内容
r = requests.get('http://www.webxml.com.cn/WebServices/TrainTimeWebService.asmx/getDetailInfoByTrainCode?TrainCode=G666&UserID=')
result = r.text# 解析XML格式内容
root = ET.XML(result)
for node in root.iter('TrainDetailInfo'):print(node.find('TrainStation').text,node.find('StartTime').text,node.tag,node.attrib)
转载于:https://www.cnblogs.com/guigujun/p/7614506.html
python3模块: requests相关推荐
- Python3之requests模块
Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. 发送G ...
- python3 爬虫 requests安装_BOSS直聘招聘信息获取之爬虫工具分析
点击蓝色"不太灵光的程序员"关注我哟 加个"星标",每天上午 09:30,干货推送! 文中使用的组件库仅限于Python语言,由于最近收到一些同学的留言说,按照 ...
- python 安装模块requests、bs4、html5lib、 lxml、matplotlib
前言:最近学习python,想尝试下实现抓取网页的文本,并实现词频统计的功能.实现该功能需要安装的模块,分别是 requests.bs4.html5lib.lxml.matplotlib 背景:已经 ...
- 手机版python3.6.6的requests库下载_Python爬虫之Python3.6 Requests库的基本使用方法
Python爬虫之Python3.6 Requests库的基本使用方法 未分类 在使用Python过程中,使用http处理各种请求是我们绕不过去的,在Python中开发爬虫用来抓取各种网络上的资源,就 ...
- python3.x+requests 爬取网站遇到中文乱码的解决方案
正常情况下,遇见问题上google找答案能甩百度100条街,但是这个问题是个例外······人家老外就没有乱码的问题.言归正传,首先建议大家看一下python3.x+requests 爬取网站遇到中文 ...
- python 菜鸟-Python3 模块
Python3 模块 在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办 ...
- python3 模块大全_Python3 模块 | 菜鸟教程
Python3 模块 在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办 ...
- python3 模块
python3 模块 time 模块: 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: (1)时间戳(timestamp) :通常来说,时间 ...
- python3使用requests登录人人影视网站
python3使用requests登录人人影视网站 继续练习使用requests登录网站,人人影视有一项功能是签到功能,需要每天登录签到才能升级. 下面的代码python代码实现了使用requests ...
最新文章
- Windows 活动目录(AD)服务器系统升级到2012之升级完成后工作(八)
- mysql数据库进阶_MySQL T2-数据库进阶?
- 《Two Dozen Short Lessons in Haskell》(二十)分数
- caffe学习日记--lesson5: VS下新建工程,探究Blob
- php1到5000排序,php排序1亿个号码
- 常见设计稿字体对应字重font-weight大小
- “我爱淘”冲刺阶段Scrum站立会议10
- 你需要来自trustedinstaller的权限才能删除
- mysql 校对规则_MySQL:校对规则
- USB快充5V-9V输入升压给16.8V四串锂电池充电板,芯片方案-37号电路板
- 瑞利 随机 matlab,matlab产生瑞利分布随机信号
- 如何将录音m4a转换为mp3格式?
- IP,ARP,以太网--网络层与数据链路层详解
- xx-xx-xx-xx转换成x年x月x日星期x
- 【云原生 • Terraform】基础设施即代码工具力荐
- 安卓Android手机汽车租赁系统app毕业设计
- 新浪微博开放平台账号申请(基于dcloud开发)
- 关于Android零基础学习的思考
- python实现邮箱正则表达式验证
- CFX 多工况后处理的批处理方法
热门文章
- 【51Nod - 1133】不重叠的线段 (贪心)
- 【CodeForces - 214C 】Game (拓扑排序,思维)
- 【POJ - 3125 】Printer Queue(模拟,队列+优先队列,STL)
- 【HDU - 1968】【UVA - 12096】The SetStack Computer (模拟,集合求交集并集操作,STL实现)
- C 的Pair用法分类整理(精)
- 对short类型,输出结果不一样?
- Apollo进阶课程㉘丨Apollo控制技术详解——基于模型的控制方法
- 机器学习笔记(八):神经网络:学习
- 7.Working with External Libraries
- 载winpcap4.1.1_最常用的11个电缆载流量数据表,建议收藏备用