【Python爬⾍】模拟百度搜索并保存⽹页源代码该程序为⼊门级爬⾍,巩固urllib库的基本使⽤
⽂章⽬录
分析步骤
1. 发送⼀个请求
2. 分析获取请求的url地址,参数
3. 处理参数并发送请求,获取响应
4. 把得到的响应保存⽂件
需求:爬⾍实现百度搜索并保存搜索后的⽹页源代码(第⼀页)
环境:Python 3.6
使⽤的库:urllib
使⽤的⼯具:Chrome,Pycharm
具体实现步骤
⾸先,导包
导⼊后续需要使⽤到的模块
quest
import urllib.parse
1.使⽤百度搜索任意内容
使⽤百度搜索得到了发送请求的url地址(这⾥搜索的是“苹果”)
url ='www.baidu/s?'# ?后⾯还有需要添加的参数
2.分析请求的url地址
简单地分析这个url地址后,获取需要⽤到的参数:ie=utf-8,wd=“搜索的内容”
target =input('请输⼊需要搜索的内容:')# 定义⼀个变量获取输⼊
data ={
'ie':'utf-8',# 这个参数经过测试可有可⽆,保险起见还是加上
'wd': target,# 想要搜索的内容
}
3.处理参数并发送请求
# 对参数进⾏编码
data = urllib.parse.urlencode(data)
# 合并urlpython新手代码图案如何保存
url = url + data
# 构造请求对象
request = quest.Request(url, headers=headers)
# 发送请求
response = quest.urlopen(request)
4.保存⽹页源代码
# 使⽤'wb'⽅式保存
with open('./result.html','wb')as fp:
fp.ad())
# 如果仅使⽤'w'⽅式保存,需要进⾏解码处理:
# fp.ad().decode())
最后附上程序源代码
quest
import urllib.parse
# 准备需要发送请求的url
url ='www.baidu/s?'
# 准备请求头
headers ={
'User-Agent':'Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Acoo Browser 1.98.744; .NET CLR 3.5.30729)', }
# 键盘读取需要搜索的内容
target =input('请输⼊需要搜索的内容:')
# url上的⼀些参数
data ={
'ie':'utf-8',
'wd': target,
}
# 对参数进⾏编码
data = urllib.parse.urlencode(data)
# 合并url
url = url + data
# 构造请求对象
request = quest.Request(url, headers=headers)
# 发送请求
response = quest.urlopen(request)
# 保存⽂件
with open('./result.html','wb')as fp:
fp.ad())
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论