使用Python爬虫库requests发送请求、传递URL参数、定制headers


Posted in Python onJanuary 25, 2020

首先我们先引入requests模块

import requests

一、发送请求

r = requests.get('https://api.github.com/events') # GET请求
r = requests.post('http://httpbin.org/post', data = {'key':'value'}) # POST请求
r = requests.put('http://httpbin.org/put', data = {'key':'value'}) # PUT请求
r = requests.delete('http://httpbin.org/delete') # DELETE请求
r = requests.head('http://httpbin.org/get') # HEAD请求
r = requests.options('http://httpbin.org/get') # OPTIONS请求
type(r)
requests.models.Response

二、传递URL参数

URL传递参数的形式为:httpbin.org/get?key=val。但是手动的构造很麻烦,这是可以使用params参数来方便的构造带参数URL。

payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.get("http://httpbin.org/get", params=payload)
print(r.url)
http://httpbin.org/get?key1=value1&key2=value2

同一个key可以有多个value

payload = {'key1': 'value1', 'key2': ['value2', 'value3']}
r = requests.get('http://httpbin.org/get', params=payload)
print(r.url)
http://httpbin.org/get?key1=value1&key2=value2&key2=value3

三、定制headers

只需要将一个dict传递给headers参数便可以定制headers

url = 'https://api.github.com/some/endpoint'
headers = {'user-agent': 'my-app/0.0.1'}
r = requests.get(url, headers=headers)

更多关于Python爬虫库requests的使用方法请点击下面的相关链接

Python 相关文章推荐
python切换hosts文件代码示例
Dec 31 Python
Python subprocess模块学习总结
Mar 13 Python
Tornado服务器中绑定域名、虚拟主机的方法
Aug 22 Python
菜鸟使用python实现正则检测密码合法性
Jan 05 Python
python 基本数据类型占用内存空间大小的实例
Jun 12 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
Python matplotlib学习笔记之坐标轴范围
Jun 28 Python
python 执行终端/控制台命令的例子
Jul 12 Python
windows10环境下用anaconda和VScode配置的图文教程
Mar 30 Python
python3.8.1+selenium实现登录滑块验证功能
May 22 Python
Python爬取微信小程序通用方法代码实例详解
Sep 29 Python
python爬虫基础之urllib的使用
Dec 31 Python
flask框架自定义url转换器操作详解
Jan 25 #Python
常用python爬虫库介绍与简要说明
Jan 25 #Python
flask框架url与重定向操作实例详解
Jan 25 #Python
flask框架蓝图和子域名配置详解
Jan 25 #Python
flask框架渲染Jinja模板与传入模板变量操作详解
Jan 25 #Python
如何在 Django 模板中输出 "{{"
Jan 24 #Python
在keras中获取某一层上的feature map实例
Jan 24 #Python
You might like
PHP调用Linux的命令行执行文件压缩命令
2013/01/27 PHP
ubuntu下配置nginx+php+mysql详解
2015/09/10 PHP
PHP中单例模式的使用场景与使用方法讲解
2019/03/18 PHP
php+jQuery ajax实现的实时刷新显示数据功能示例
2019/09/12 PHP
再谈javascript 动态添加样式规则 W3C校检
2009/12/25 Javascript
js变量以及其作用域详解
2020/07/18 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
js实现屏蔽默认快捷键调用自定义事件示例
2013/06/18 Javascript
Jquery实现图片预加载与延时加载的方法
2014/12/22 Javascript
IE8中动态创建script标签onload无效的解决方法
2014/12/22 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
jquery带下拉菜单和焦点图代码分享
2015/08/24 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
2016/04/18 Javascript
Canvas 制作动态进度加载水球详解及实例代码
2016/12/09 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
2017/02/08 Javascript
利用JavaScript实现栈的数据结构示例代码
2017/08/02 Javascript
bootstrap modal+gridview实现弹出框效果
2017/08/15 Javascript
Angularjs按需查询实例代码
2017/10/30 Javascript
angular2路由之routerLinkActive指令【推荐】
2018/05/30 Javascript
webpack打包nodejs项目的方法
2018/09/26 NodeJs
vue-cli3使用 DllPlugin 实现预编译提升构建速度
2019/04/24 Javascript
py2exe 编译ico图标的代码
2013/03/08 Python
python解析xml文件实例分享
2013/12/04 Python
Python3实现Web网页图片下载
2016/01/28 Python
对于Python中RawString的理解介绍
2016/07/07 Python
对python numpy.array插入一行或一列的方法详解
2019/01/29 Python
python-tornado的接口用swagger进行包装的实例
2019/08/29 Python
torch 中各种图像格式转换的实现方法
2019/12/26 Python
python中random模块详解
2021/03/01 Python
HTML5自定义属性前缀data-及dataset的使用方法(html5 新特性)
2017/08/24 HTML / CSS
博朗(Braun)俄罗斯官方商店:德国小家电品牌
2019/09/24 全球购物
购房协议书范本
2014/04/11 职场文书
2015年教师节演讲稿范文
2015/03/19 职场文书
幼儿园2015年度工作总结
2015/04/01 职场文书
python实现高效的遗传算法
2021/04/07 Python
Linux下搭建SFTP服务器的命令详解
2022/06/25 Servers