发送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库的学习——跟随官方文档的更多相关文章

  1. 小白学习React官方文档看不懂怎么办?

    最近在上React课程的时候,发现好多同学不会看文档,所以在这里写一篇文章,希望能给同学们一点点启发. 我们首先打开React官方网站——https://react.docschina.org/doc ...

  2. 学习android 官方文档

    9.29 1. 今天,FQ,看到android studio中文网上有一个FQ工具openVPN,我就使用了. 之前用过一个FQ工具开眼,但由于网速慢,我就弃用了. 2. 现在,我就可以FQ去andr ...

  3. 小白学习React官方文档看不懂怎么办?2.JSX语法

      接下来我们就要讲到JSX语法了,在我们讲它之前,我们先引入一个概念叫语法糖.     听到这个名字首先我们可能会想到一个词叫”糖衣炮弹“,那么什么叫糖衣炮弹呢,就是给你说各种好听的话,来迷惑你,但 ...

  4. 小白学习React官方文档看不懂怎么办?3.元素渲染

    直接上代码 const element = <h1>Hello, world</h1>; ReactDOM.render(     element,      document ...

  5. Spring 4 官方文档学习(十一)Web MVC 框架之配置Spring MVC

    内容列表: 启用MVC Java config 或 MVC XML namespace 修改已提供的配置 类型转换和格式化 校验 拦截器 内容协商 View Controllers View Reso ...

  6. Spring 4 官方文档学习(十一)Web MVC 框架

    介绍Spring Web MVC 框架 Spring Web MVC的特性 其他MVC实现的可插拔性 DispatcherServlet 在WebApplicationContext中的特殊的bean ...

  7. Spring 4 官方文档学习 Spring与Java EE技术的集成

    本部分覆盖了以下内容: Chapter 28, Remoting and web services using Spring -- 使用Spring进行远程和web服务 Chapter 29, Ent ...

  8. Spring 4 官方文档学习(十四)WebSocket支持

    个人提示:如果需要用到页面推送,高频且要低延迟,WebSocket无疑是最佳选择.否则还是轮询和long polling吧. 做了一个小demo放在码云上,有兴趣的可以看一下,简单易懂:websock ...

  9. Spring 4 官方文档学习(十二)View技术

    关键词:view technology.template.template engine.markup.内容较多,按需查用即可. 介绍 Thymeleaf Groovy Markup Template ...

随机推荐

  1. 选择提示框UIAlertController 和网络状态判断AFNetworking

    // 选择提示框 DownloadView *vc = [[DownloadView alloc] initWithFrame:CGRectMake(, , SCREEN_WIDTH, SCREEN_ ...

  2. 使用top观察一进程的cpu历史占用情况

    #!/bin/shtop -b -n 1 -p 1975| tail -3 >>process1975.log 搞了时间节点,做个定时任务什么的就ok了

  3. Zynq7000开发系列-3(Xilinx交叉编译环境搭建)

    一.前言 上一篇文章说了,在开发之前必须先搭建起交叉编译环境,于是这里我们就介绍一下环境的搭建过程. 其实在所安装的Vivado HLx 2016.4中就包含了Xilinx SDK,在该SDK上即可开 ...

  4. ARP数据包

    结构ether_header定义了以太网帧首部:结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答:ether_arp结构除了包含arphdr结构外,还包含源主机和 ...

  5. A.走方格

    链接:https://ac.nowcoder.com/acm/contest/368/A 题意: 在一个n*n的方格中,你只能斜着走. 你还有一次上下左右走的机会 给你一个起点(sx,sy),和终点( ...

  6. 移动端REM布局模板(阿里高清方案)

    移动端REM布局模板(阿里高清方案),蛮好的,转自: http://www.jianshu.com/p/985d26b40199 . <!DOCTYPE html> <html la ...

  7. net core 在docker(ubuntu)部署

    1.vs新建项目并发布,然后copy到linux系统上,我这里是用的虚拟机. 2 Dockerfile文件配置 FROM microsoft/dotnet:2.1-aspnetcore-runtime ...

  8. C语言中的fprintf函数详解

    fprintf 功能 传送格式化输出到一个文件中 用法 #include   stdio.h int fprintf( FILE *stream, const char *format,...); f ...

  9. IOS小技巧整理

    1 随机数的使用  头文件的引用         #import <time.h>        #import <mach/mach_time.h> srandom()的使用 ...

  10. SPM-软件项目管理之感想

    这学期开始选择选修课的时候是需要把每节课都过一遍的.当我上完SPM那节课的时候,我就已经决定要选这门课了,尽管还有其他的课我都还没上过.由于这节课是双语教学-中文老师兼外籍老师,这样的方式感觉很新颖, ...