requests库的学习——跟随官方文档
发送GET请求:
- import requests
- r=requests.get("http://www.kekenet.com/")
如果需要传递参数可以有以下几种方法:
- import requests
- r=requests.get("http://httpbin.org/get?key1=value1&key2=value2")
或者
- payload = {'key1': 'value1', 'key2': 'value2'}
- r=requests.get("https://httpbin.org/get",params=payload)
其中payload里面的值也可以是列表类型的,如
- payload = {'key1': 'value1', 'key2': ['value2', 'value3']}
相当于访问url:https://httpbin.org/get?key1=value1&key2=value2&key2=value3
定制请求头:
- headers={'user-agent': 'my-app/0.0.1'}
- r=requests.get("https://api.github.com/some/endpoint",headers=headers)
读取内容:
如果是读取非文本数据,可以使用r.content来读取二进制数据
如果需要读取网页内容,可以使用r.text,Requests会基于Http头部进行对编码推测,并选择合适的解码方式。你可以使用r.encoding来查看编码方式,如果返回的网页内容出现了乱码,可以通过查看r.content的头部编码来修改r.encoding的值重新进行r.text的提取,这样就会得到正确的内容了。
- r=requests.get("http://www.kekenet.com/")
- print(r.text)#这里是乱码,
- print(r.encoding)#可以查看出Requests推测的内容编码方式
- r.encoding="UTF-8" #通过查看网页的编码方式来修改r.encoding
- print(r.text)
处理json数据:
Requests内部有一个json解码器,能够帮你处理json数据
- r=requests.get("https://api.github.com/events")
- t=r.json()
发送POST请求:
发送post请求需要添加data,
data可以是dict类型,也可以是str类型,也可以是元祖类型
- payload = (('key1', 'value1'), ('key1', 'value2'))
- r = requests.post('https://httpbin.org/post', data=payload)
- print(r.text)
响应状态码:
可以通过
- r.status_code
来查看响应状态码;响应状态码是表示是否成功访问。一般正常是200
响应头:
可以通过
- r.headers
来查看响应头
requests库的学习——跟随官方文档的更多相关文章
- 小白学习React官方文档看不懂怎么办?
最近在上React课程的时候,发现好多同学不会看文档,所以在这里写一篇文章,希望能给同学们一点点启发. 我们首先打开React官方网站——https://react.docschina.org/doc ...
- 学习android 官方文档
9.29 1. 今天,FQ,看到android studio中文网上有一个FQ工具openVPN,我就使用了. 之前用过一个FQ工具开眼,但由于网速慢,我就弃用了. 2. 现在,我就可以FQ去andr ...
- 小白学习React官方文档看不懂怎么办?2.JSX语法
接下来我们就要讲到JSX语法了,在我们讲它之前,我们先引入一个概念叫语法糖. 听到这个名字首先我们可能会想到一个词叫”糖衣炮弹“,那么什么叫糖衣炮弹呢,就是给你说各种好听的话,来迷惑你,但 ...
- 小白学习React官方文档看不懂怎么办?3.元素渲染
直接上代码 const element = <h1>Hello, world</h1>; ReactDOM.render( element, document ...
- Spring 4 官方文档学习(十一)Web MVC 框架之配置Spring MVC
内容列表: 启用MVC Java config 或 MVC XML namespace 修改已提供的配置 类型转换和格式化 校验 拦截器 内容协商 View Controllers View Reso ...
- Spring 4 官方文档学习(十一)Web MVC 框架
介绍Spring Web MVC 框架 Spring Web MVC的特性 其他MVC实现的可插拔性 DispatcherServlet 在WebApplicationContext中的特殊的bean ...
- Spring 4 官方文档学习 Spring与Java EE技术的集成
本部分覆盖了以下内容: Chapter 28, Remoting and web services using Spring -- 使用Spring进行远程和web服务 Chapter 29, Ent ...
- Spring 4 官方文档学习(十四)WebSocket支持
个人提示:如果需要用到页面推送,高频且要低延迟,WebSocket无疑是最佳选择.否则还是轮询和long polling吧. 做了一个小demo放在码云上,有兴趣的可以看一下,简单易懂:websock ...
- Spring 4 官方文档学习(十二)View技术
关键词:view technology.template.template engine.markup.内容较多,按需查用即可. 介绍 Thymeleaf Groovy Markup Template ...
随机推荐
- DRF教程1-序列化
序列化类 要建立web API,要做的第一件事就是对实例进行序列化,比如以json方式显示.我们可以生命序列化,它和django的forms很相似.在app目录下创建serializers.py fr ...
- Flask (二) cookie 与 session 模型
会话技术 Cookie 客户端端的会话技术 cookie本身由浏览器保存,通过Response将cookie写到浏览器上,下一次访问,浏览器会根据不同的规则携带cookie过来 特点: - 客 ...
- [poj 2104] K-th Number【主席树】
传送门:http://poj.org/problem?id=2104 保存模版. #include <cstdio> #include <algorithm> #include ...
- [已读]用Angularjs开发下一代web应用
屯了很久了,貌似是国内出现的第一本讲angularjs的书...上上周看完的时候,angular2都要出来了...angular的双向绑定很赞,因为之前公司后台系统我都用tmodjs做,模板语法什么的 ...
- 牛客网Java刷题知识点之什么是cookie、什么是session、cookie和session有什么区别
不多说,直接上干货! https://www.nowcoder.com/ta/review-java/review?tpId=31&tqId=21170&query=&asc= ...
- JS的文本框验证以及form表单的提交阻止
js: 1.只能输入数字 只能输入数字:<input type="text" onkeyup="javascript:ReNumber(this)" /& ...
- m_pConnection.CreateInstance( "ADODB.Connection ") 执行错误 结果总是为NULL
今天下午搞了下项目 数据库操作模块,总是出现m_pConnection.CreateInstance( "ADODB.Connection ") 执行错误,即m_pConnecti ...
- windows下jdk环境变量配置
JAVA_HOMEC:\Program Files\Java\jdk1.8.0_131 JMETER_HOMEC:\jmeter\jmeter3.2 CLASSPATH%JAVA_HOME%\lib; ...
- _T(x) _TEXT(x) L 代表什么?
首先 <tchar.h>中 #ifdef _UNICODE .... #define __T(x) L ## x //替换 #else /* ndef _UNICODE ...
- 在ABAP里模拟实现Java Spring的依赖注入
Dependency Injection- 依赖注入,在Java Spring框架中有着广泛地应用.通过依赖注入,我们不必在应用代码里繁琐地初始化依赖的资源,非常方便. 那么ABAP能否从语言层面上也 ...