网络请求之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) #樱由罗
相关推荐
少废话h1 小时前
解决Flink中ApacheCommonsCLI版本冲突
开发语言·python·pycharm
serve the people1 小时前
TensorFlow 图执行(tf.function)的 “非严格执行(Non-strict Execution)” 特性
人工智能·python·tensorflow
天命码喽c1 小时前
GraphRAG-2.7.0整合Milvus-2.5.1
开发语言·python·milvus·graphrag
吴佳浩3 小时前
LangChain 深入
人工智能·python·langchain
网安-轩逸6 小时前
回归测试原则:确保软件质量的基石
自动化测试·软件测试·python
Mr_Xuhhh6 小时前
YAML相关
开发语言·python
咖啡の猫6 小时前
Python中的变量与数据类型
开发语言·python
汤姆yu6 小时前
基于springboot的电子政务服务管理系统
开发语言·python
执笔论英雄7 小时前
【RL】python协程
java·网络·人工智能·python·设计模式
帮帮志8 小时前
【AI大模型对话】流式输出和非流式输出的定义和区别
开发语言·人工智能·python·大模型·anaconda