Python中怎么实现一个网页采集器
发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,本篇文章为大家展示了Python中怎么实现一个网页采集器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。requests模块python中封装好的一个基于网络请
千家信息网最后更新 2025年02月05日Python中怎么实现一个网页采集器
本篇文章为大家展示了Python中怎么实现一个网页采集器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
requests模块
python中封装好的一个基于网络请求的模块。用来模拟浏览器发请求。安装:pip install requests
requests模块的编码流程
指定url
发起请求
获取相应数据
持久化储存
# 爬取搜狗首页的页面源码数据import requests# 1. 指定urlurl = "https://www.sogou.com"# 2.发送请求 getresponse = requests.get(url=url) # get返回值是Response对象# 获取响应数据,响应数据在Response对象里page_text = response.text # text返回字符串形式的响应数据# 4.持久化储存with open("sogou.html","w",encoding='utf-8') as fp: fp.write(page_text)
项目:实现一个简易的网页采集器
要求:程序基于搜狗录入任意的关键字然后获取关键字对应的相关的整个页面。
# 1.指定url,需要让url携带的参数动态化url = "https://www.sogou.com/web"# 实现参数动态化,不推荐参数的拼接,参数如果太多就相当麻烦。# requests模块实现了更为简便的方法ky = input("enter a key")params = { 'query':ky}# 将需要的请求参数对应的字典作用到get方法的params参数中,params参数接受一个字典response = requests.get(url=url,params=params)page_text = response.textwith open(f"{ky}.html","w",encoding='utf-8') as fp: fp.write(page_text)
上述代码执行后:
出现了乱码
数据量级不对
# 解决乱码url = "https://www.sogou.com/web"ky = input("enter a key")params = { 'query':ky}response = requests.get(url=url,params=params)# print(response.encoding) 会打印原来response的编码格式response.encoding = 'utf-8' # 修改响应数据的编码格式page_text = response.textwith open(f"{ky}.html","w",encoding='utf-8') as fp: fp.write(page_text)
上述代码执行后:
收到了错误页面(搜狗的反爬机制)
UA检测
绝大多数网站都有UA检查反爬机制
门户网站通过检测请求载体的身份标识判定该请求是否为爬虫发出的请求
反反爬策略:UA伪装 请求头增加User-Agent
打开浏览器请求搜狗页面,右键点击检查进入Network,点击Headers找到浏览器的User-Agent
注意:任意浏览器的身份标识都可以。
# 反反爬策略:请求头增加User-Agenturl = "https://www.sogou.com/web"ky = input("enter a key")params = { 'query':ky}# 请求头中增加User-Agent ,注意请求头的数据格式是键值对,且都是字符串。headers = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36"}response = requests.get(url=url,params=params,headers=headers)response.encoding = 'utf-8' page_text = response.textwith open(f"{ky}.html","w",encoding='utf-8') as fp: fp.write(page_text)
上述内容就是Python中怎么实现一个网页采集器,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
数据
参数
搜狗
模块
浏览器
页面
浏览
网页
采集器
格式
编码
乱码
代码
关键
关键字
内容
动态
字典
字符
字符串
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
幼儿主题网络安全小卫士
怎么去国家网络安全局
服务器怎么vpn
网络安全态势感知系统怎么做
软件开发服务怎么开发票
天融信参加国家网络安全宣传周
戴尔t140服务器说明书
中科院数据库新技术课件
关于服务器安全
网络安全工程师的晋升空间
光学透镜设计软件开发公司
打开服务器系统管理
农安先进网络技术推荐咨询
读取数据库数据做直方图
网络技术加盟哪个牌子好
linux部署邮件服务器
网络技术安全措施
嵌入式软件开发哪家便宜
计算机网络技术梗
数据库查询数组内
关于网络安全的有趣图片
石爪峰 服务器
青岛浪潮存储服务器测评
超星数据库技术答案
计算机网络安全技术读后感
外包出去的软件开发如何记账
海南科技产业互联网有哪些
数据治理与网络安全研究
互联网服务营业场所网络安全
护航网络安全工作