北京新发地网页信息爬取
一、立项背景和目标
北京新发地农产品批发市场作为全国交易规模最大的农产品专业批发市场,其官网每日发布大量蔬菜、水果等农产品的价格行情数据,涵盖品名、规格、产地、价格区间、发布日期等关键信息。这些价格行情数据分散在多个列表页面中,人工逐条复制品名、最低价、平均价、最高价、规格、产地、单位、发布日期等信息录入 Excel 表格工作量大、效率低下,且分页翻阅统计困难。本项目立项目标:基于 Playwright 自动化浏览器抓取北京新发地农产品批发市场官网多页价格行情数据,自动解析字段并写入 Excel 文件,实现农产品价格数据批量结构化导出,方便后续价格趋势分析、产地分布统计与市场行情归档,同时掌握动态网页分页爬取、XPath 层级定位、openpyxl 表格持久化存储的完整爬虫开发流程。
二、软件功能、核心功能模块介绍
三大核心功能模块
(1)Excel 表格初始化模块:使用 openpyxl 库新建工作簿,创建名为“新发地价格行情”工作表,预先写入表头【一级分类、二级分类、品名、最低价、平均价、最高价、规格、产地、单位、发布日期】,智能设置各列宽度确保数据完整显示,定义全局列表用于临时存储抓取到的结构化数据,为后续数据落地做准备。
(2)浏览器自动化页面交互模块:调用 Playwright 启动本地 Chromium 浏览器,配置可视化运行窗口、操作减速防反爬;自动访问北京新发地农产品批发市场官网价格行情栏目,支持按分类筛选(蔬菜、水果等),自动识别总页数并循环执行分页加载逻辑,每页设置合理等待时间,保证后端动态渲染的价格列表完整加载。
(3)数据解析与表格写入模块:通过层级 XPath 定位每一条价格行情数据 DOM 容器,循环提取一级分类、二级分类、品名、最低价、平均价、最高价、规格、产地、单位、发布日期;增加智能字段清洗逻辑,过滤异常数据和空值,逐条将字段追加写入 Excel 工作表,提供数据去重机制避免重复记录,最终完整保存为本地表格文件。
三、业务流程、功能路径描述
(1)程序初始化:创建 Excel 文件、新建工作表并设置表头及列宽;配置本地 Chromium 浏览器启动路径与反爬兼容参数;提示用户选择需要爬取的农产品分类(默认全部分类);
(2)自动化访问目标网站:打开北京新发地农产品批发市场官网价格行情页面,等待页面完全加载后,通过 XPath 定位分类筛选下拉菜单,根据用户选择模拟点击切换分类,等待列表数据刷新;
(3)分页循环抓取:自动解析总页数,循环执行分页爬取,每一页等待 3-5 秒确保列表数据 JS 渲染完成;定位所有价格行情条目父级容器,获取当前页条目数量;
(4)逐条解析字段:遍历每条条目 DOM 节点,分别提取一级分类、二级分类、品名、最低价、平均价、最高价、规格、产地、单位、发布日期,清洗字符串去除空白字符和无
搜索
大数据