urllib.parse的作用是解析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的意义。
# 引用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) #樱由罗