1.导入python自带包urllib
import urllib.request
import urllib.parse
2.定义要访问的地址
url = 'http://www.baidu.com/s?wd='
3.设置请求头
headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" }
4.设置请求参数
data = { 'name':'周杰伦', # 'sex':'男', # 'localtion':'中国台湾' }
newData = urllib.parse.urlencode(data)
5.拼接url
url = url + newData
6.请求对象的定制
request = urllib.request.Request(url=url,headers=headers)
7.模拟浏览器向服务器发送请求
response = urllib.request.urlopen(url)
8.获取响应的源码为字节形式,使用decode('utf-8')解码
content = response.read().decode('utf-8')
9.将获取的源码保存为baidu.html文件
urllib.request.urlretrieve(url, 'baidu.html') print(content)
10.展示
11.源码
# 导入python自带包urllib
import urllib.request
import urllib.parse
# 定义要访问的地址
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
url = 'http://www.baidu.com/s?wd='
baseurl = 'http://www.baidu.com/s?wd='
#将人名转变为unicode编码格式
name = urllib.parse.quote('张明强')
data = {
'name':'周杰伦',
# 'sex':'男',
# 'localtion':'中国台湾'
}
newData = urllib.parse.urlencode(data)
url = url + name
#url open方法不能存储字典
#请求对象的定制
request = urllib.request.Request(url=url,headers=headers)
# 模拟浏览器向服务器发送请求
response = urllib.request.urlopen(url)
# 获取响应的源码为字节形式,使用decode('utf-8')解码
content = response.read().decode('utf-8')
urllib.request.urlretrieve(url, 'baidu.html')
print(content)