ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

urllib3--爬取网页内容

urllib3--爬取网页内容 简介Urllib3是一个功能强大条理清晰用于HTTP客户端的Python包urllib3网址https://pypi.org/project/urllib3/Urllib3提供了很多python标准库里所没有的重要特性连接池线程安全客户端SSL/TLS验证文件分部编码上传协助处理重复请求和HTTP重定位支持压缩编码支持HTTP和SOCKS代理100%测试覆盖率基本用法1. 导入urllib3模块import urllib32. 创建一个PoolManager实例http urllib3.PoolManager()3、 通过request()方法创建一个请求返回的r是一个HTTPResponse对象r http.request(GET, http://httpbin.org/get)4、添加头部字段headersheaders {User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0} r http.request(GET, http://httpbin.org/get, headersheaders)5、添加请求参数data {username:sunwukong,password:123456} r http.request(GET, http://httpbin.org/get, fieldsdata)典型用法import urllib3 # 创建PoolManager实例 http urllib3.PoolManager() # 发送GET请求 response http.request(GET, https://httpbin.org/get) # 发送POST请求 response http.request(POST, https://httpbin.org/post, fields{key: value}) # 获取响应数据 print(response.status) print(response.data.decode(utf-8)) # 记得关闭连接池 http.clear()实训1、get请求import urllib3 http urllib3.PoolManager() data {username:sunwukong,password:123456} r http.request(GET, http://httpbin.org/get, fieldsdata) print(r.data.decode(utf-8))2、配置headersimport urllib3 http urllib3.PoolManager() headers {User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0} r http.request(GET, http://httpbin.org/get, headersheaders) print(r.data.decode(utf-8))3、post请求import urllib3 import json http urllib3.PoolManager() data {username:sunwukong,password:123456} data json.dumps(data).encode(utf-8) headers {User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0, Content-Type:application/json} r http.request(post, http://httpbin.org/post, headersheaders, bodydata) print(r.data.decode(utf-8))
返回列表