| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> 【python爬虫学习篇】请求模块urllib3 -> 正文阅读 |
|
[Python知识库]【python爬虫学习篇】请求模块urllib3 |
目录 1.urllib3urllib3是一个第三方的请求模块,在功能上要比python自带的urllib强大,由于urllib3是第三方模块所以需要单独安装该模块。 安装命令:pip install urllib3 1.1,发送网络请求1.1.2,GET请求使用urllib3模块发送网络请求时,首先需要创建PoolManager对象 ,通过该对象调用request()方法来实现网络请求发送。 使用PoolManager对象向多个服务器发送请求。一个PoolManager对象就是一个连接池管理对象,通过该对象可以向多个服务器发送请求。 示例代码:
运行结果: ?1.1.3,POST请求示例代码:
运行结果: ? ?1.1.4,重试请求和处理响应内容通过reties参数设置重试请求,在默认情况下,request()方法的请求重试次数为3,改变重试次数,则可以设置reties参数。 发送网络请求后,将返回一个HTTPResponse对象,通过该对象中的info()方法即可获取HTTP响应头信息,该信息为字典(dict)类型的数据,所以通过for循环进行遍历才可以清晰的看清每条响应头信息的内容。 示例代码:
运行结果: ?1.1.5,JSON信息处理返回的JSON信息。如果服务器返回一条JSON信息,而这条信息中只有某一条数据为可用数据时,则可以先将返回的JSON数据转化为字典数据,接着直接获取所对应的建的值即可。 代码示例:
执行结果; 1.2,复杂请求的发送1.2.1,设置请求头大多数的服务器都会检测请求头信息,判断当前请求是否来自浏览器请求。使用request()方法设置请求头信息时,只需要为headers参数指定一个有效的字典(dict)类型的请求头信息即可。所以设置请求头信息前,需要在浏览器中找到一个有效的请求头信息。 通过F12(Ctrl+F12)进入开发者工具 ?请求头信息获取完成以后,将User—Agent设置为字典数据的键,后面的数据设置为字典中的value。 代码示例:
运行结果: ?1.2.2,设置超时在没有特殊要求的情况下,可以将设置超时的参数时间填写在request()方法或者PoolManager实列对象中, 代码示例:
运行结果: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 14:56:50- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |