将汉字转化为%xx
import urllib.parse
string='哈哈哈'
zh=urllib.parse.quote(string)
print(zh)
zh1=urllib.parse.unquote(zh)
print(zh1)
爬取不同人物信息
通过观察上面的url发现wd后面跟的为所需要的参数,再往后的信息为其他用处不大的信息,在通过观察请求网址发现发送的网址中 中文参数被转化成了%xx格式,所以我们可以将所要查找的参数转化为%xx格式进行查询想要的信息。
import urllib.request
import urllib.parse
#将汉字转化为%xx 的形式
str=input('请输入你想查找的人物?信息:')
name=urllib.parse.quote(str)
url='https://www.baidu.com/s?wd='
url=url+name
headers={
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36'
}
request=urllib.request.Request(url=url,headers=headers)
response=urllib.request.urlopen(request)
content=response.read().decode('utf-8')
with open('我不是小黑子.html','w',encoding='utf-8')as f:
f.write(content)
该网页的请求方法为get,参数在url中,还有一种请求方式为post二者差别见另一篇文章《爬虫post请求和get请求格式总结》