Python中怎么实现一个网页采集器
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,本篇文章为大家展示了Python中怎么实现一个网页采集器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。requests模块python中封装好的一个基于网络请
千家信息网最后更新 2025年02月19日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安全错误
数据库的锁怎样保障安全
北京网络安全家教
千房百剂数据库
昆明品牌软件开发厂家价格
应用服务器属于什么
在数据库安全中
软件开发的功能周期包括
大数据和网络安全项目
数据库安全设备问题
普通内存和服务器内存的区别
中国核心遴选数据库收录
网络技术对应大专专业
长沙民政软件开发专升本
数据库连接不上sql
cct考试数据库的操作
数据库技术及应用学生表
无线网络安全向导网络名
小商品大数据库爆品
文件存储服务器安装
消防部队网络安全教育ppt
帆软10数据库连接
linux服务器网络连接不通
即时聊天软件开发
2k20 ps4服务器连接不上
软件开发并销售企业账务处理
育碧服务器vpn
街道信息网络安全工作自查报告
网络安全的主要问题是什么
自己搭建聊天服务器供三万人聊天
腐蚀生存rust怎么开服务器
便宜的台湾服务器虚拟主机