urllib.parse与urllib.request模块的综合运用
- **urllib.parse **加粗样式
- urllib.request.Request()
- urllib.request.urlopen()
从百度上爬取一个链接,并下载保存这个网页数据
import urllib.parse
import urllib.request
#构造一个url的不变部分
baseurl = 'https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd='
content = input('请输入搜素内容')
#url 关键词部分
wd = {'wd':content}
content=urllib.parse.urlencode(wd)
#拼接Url
url = baseurl + content
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'}
r=urllib.request.Request(url,headers=headers)
res = urllib.request.urlopen(r)
html = res.read().decode("utf-8")
with open("海贼王.html",'w',encoding='utf-8') as f:
f.write(html
其中,不难看出urllib.parse()有点类似重构Url 的作用。心得:原本不是很理解这个模块的作用,但在使用过中,对这个模块产生了一种豁然开朗的明悟,所以需要多加练习。欢迎大家的继续监督,小编在此谢过~~