网络请求之urllib.parse的使用

urllib.parse的作用是解析url。

为什么要解析呢,我来举个例子。在百度图片里面搜一下历史人物,比如樱由罗:

点击百度一下 跳转到页面如下:

我们找到url分析一下看看:

url 复制代码
https://image.baidu.com/search/index?tn=baiduimage&ipn=r&ct=201326592&cl=2&lm=&st=-1&fm=index&fr=&hs=0&xthttps=111110&sf=1&fmq=&pv=&ic=0&nc=1&z=&se=&showtab=0&fb=0&width=&height=&face=0&istype=2&ie=utf-8&word=%E6%A8%B1%E7%94%B1%E7%BD%97

后面的参数:word=%E6%A8%B1%E7%94%B1%E7%BD%97 明显是汉字被编码了,因为爬虫就是要模拟浏览器发送请求给服务器,所以爬数据的时候就得根据url的实际情况进行编码,这就是urllib.parse的意义。

python 复制代码
# 引用urllib.parse
import urllib.parse
#定义url的参数,这里用字典,参数都是键值对
wd={"word":"樱由罗"}
res=urllib.parse.urlencode(wd)
print(res)  #word=%E6%A8%B1%E7%94%B1%E7%BD%97

#解碼操作
result=urllib.parse.unquote(res)
print(result) #樱由罗
相关推荐
tkevinjd2 小时前
MiniCode 项目详解6:原项目控制系统的10个缺陷(已修复)
python·llm·agent
dNGUZ7UGj3 小时前
10分钟完成第一个Python小游戏
python·django
没有梦想的咸鱼185-1037-16633 小时前
AI-Python机器学习与深度学习技术:CNN/Transformer/扩散模型、SHAP可解释及Hermes智能体自动化
人工智能·python·深度学习·机器学习·chatgpt·cnn·transformer
霸道流氓气质3 小时前
SpringBoot中通用工具类库(Utils)封装与使用实践
spring boot·后端·python
Draina5 小时前
CBC填充预言攻击-CBC Padding Oracle Crypto Attack
python·安全·web安全·网络安全·密码学·安全性测试
Angel Q.6 小时前
特征提取 | DINO 到 DINOv3
图像处理·python
不如语冰6 小时前
AI大模型入门-pytorch-张量2 tensor创建
python
NPE~6 小时前
[AI]Agent开发——ADK框架使用
人工智能·python·ai·教程·adk·agent开发
矮个史蒂芬6 小时前
统计verilog .v文件中output 的bit数
python
gwf2167 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件