失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【Python爬虫】模拟百度搜索并保存网页源代码

【Python爬虫】模拟百度搜索并保存网页源代码

时间:2023-11-12 04:29:55

相关推荐

【Python爬虫】模拟百度搜索并保存网页源代码

该程序为入门级爬虫,巩固urllib库的基本使用

文章目录

分析步骤具体实现步骤首先,导包1.使用百度搜索任意内容2.分析请求的url地址3.处理参数并发送请求4.保存网页源代码最后附上程序源代码

分析步骤

发送一个请求分析获取请求的url地址,参数处理参数并发送请求,获取响应把得到的响应保存文件

需求:爬虫实现百度搜索并保存搜索后的网页源代码(第一页)

环境:Python 3.6

使用的库:urllib

使用的工具:Chrome,Pycharm

具体实现步骤

首先,导包

导入后续需要使用到的模块

import urllib.requestimport urllib.parse

1.使用百度搜索任意内容

使用百度搜索得到了发送请求的url地址(这里搜索的是“苹果”)

url = '/s?' # ?后面还有需要添加的参数

2.分析请求的url地址

简单地分析这个url地址后,获取需要用到的参数:ie=utf-8,wd=“搜索的内容”

target = input('请输入需要搜索的内容:') # 定义一个变量获取输入data = {'ie': 'utf-8', # 这个参数经过测试可有可无,保险起见还是加上'wd': target, # 想要搜索的内容}

3.处理参数并发送请求

# 对参数进行编码data = urllib.parse.urlencode(data)# 合并urlurl = url + data# 构造请求对象request = urllib.request.Request(url, headers=headers)# 发送请求response = urllib.request.urlopen(request)

4.保存网页源代码

# 使用'wb'方式保存with open('./result.html', 'wb') as fp:fp.write(response.read())# 如果仅使用'w'方式保存,需要进行解码处理:# fp.write(response.read().decode())

最后附上程序源代码

import urllib.requestimport urllib.parse# 准备需要发送请求的urlurl = '/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)# 合并urlurl = url + data# 构造请求对象request = urllib.request.Request(url, headers=headers)# 发送请求response = urllib.request.urlopen(request)# 保存文件with open('./result.html', 'wb') as fp:fp.write(response.read())

如果觉得《【Python爬虫】模拟百度搜索并保存网页源代码》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。