程序聚合 软件案例 百度图片爬取

百度图片爬取

2026-07-29 17:44:34
行业:音视频
载体:爬虫/脚本、网站
技术:JavaScript、Python

业务和功能介绍

1. 立项背景和目标
手动批量下载百度图片效率低下,为快速收集配图素材,基于 Playwright 开发关键词图片自动爬取工具,输入关键词即可批量下载图片到本地文件夹,提升素材收集效率,掌握动态页面爬虫技术。
2. 核心功能模块
环境初始化:自动创建 imgs 存储文件夹,配置 Edge 浏览器路径与 UA 请求头,规避基础反爬;
浏览器自动化:启动 Edge 浏览器访问百度图片搜索页,循环滚动模拟下拉加载全部懒加载图片;
图片下载解析:通过 XPath 提取图片真实地址,过滤无效链接,用 requests 下载图片并本地保存,异常捕获防止单张失败导致程序崩溃。
3. 业务流程
输入搜索关键词→自动创建保存文件夹→浏览器打开对应搜索页面→多次下滑加载完整图片→提取图片有效链接→批量下载存入本地 imgs 文件夹→关闭浏览器结束程序。

项目实现

1. 技术架构与技术栈
整体为 Python 单文件线性脚本架构,四层执行:文件操作层、浏览器自动化层、元素解析层、文件下载层。
技术:Python3.12、Playwright(浏览器渲染解决动态懒加载)、requests(图片下载)、os(文件管理)、XPath 元素定位。
2. 个人负责内容与量化成果
独立完成全部代码编写、参数调试、异常处理。可单次输入关键词下滑 30 次加载多页图片,最多稳定抓取 300 余张图片自动归档,全程无需手动操作,素材收集效率大幅提升。
3. 遇到难点及解决方案
(1)百度图片动态懒加载,静态请求拿不到图片:使用 Playwright 真实浏览器渲染页面,模拟滚轮下滑加载数据;
(2)图片真实地址存于 data-src 属性:优先读取 data-src,兜底 src,过滤非 http 无效链接;
(3)爬虫操作过快被网站限制:添加 slow_mo 延时、页面强制等待,模拟真人浏览速度;
(4)个别图片链接失效中断程序:下载代码增加 try 捕获异常,失败图片直接跳过不终止整体任务;
(5)重复运行创建文件夹报错:os.makedirs 设置 exist_ok=True,文件夹存在直接跳过。

示例图片视频


不穿花秋裤
24小时内活跃
方向: 爬虫/脚本-爬虫/脚本、
交付率:100.00%
相似推荐
数字化系统
本工厂数字化改造项目,针对传统车间设备数据孤立、人工台账低效、生产追溯困难、数据统计滞后等行业痛点立项建设,依托Go后端开发、PLC数据采集、数据库优化等技术,搭建一体化MES/WMS数字化管控体系。项目核心实现西门子PLC设备数据实时采集上传、生产工单与工序报工全流程线上管控、物料出入库与库存台账精细化管理、生产质检及设备运维记录标准化留存,同时完成系统接口对接、SQL数据治理与自动化生产报表统计功能。项目核心亮点为打通设备层、生产层、管理层数据孤岛,实现生产全链路可追溯,以自动化数据统计替代人工低效操作,统一车间数据与业务标准,落地性强、适配性高,有效提升车间生产透明度与精细化管理水平,降低人工运营误差与时间成本。
重庆儿童医院互联网医院
分为微信公众号患者端、微信小程序医生端、网页后管平台三端的功能 患者端:患者可挂号、线上问诊、查看报告、开药邮寄、缴费等功能 医生端:回复患者问题、加号、开药等功能 网页端:可以实时查看数据统计、每日访问量、医生回复率等
北京新发地网页信息爬取
一、立项背景和目标 北京新发地农产品批发市场作为全国交易规模最大的农产品专业批发市场,其官网每日发布大量蔬菜、水果等农产品的价格行情数据,涵盖品名、规格、产地、价格区间、发布日期等关键信息。这些价格行情数据分散在多个列表页面中,人工逐条复制品名、最低价、平均价、最高价、规格、产地、单位、发布日期等信息录入 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 节点,分别提取一级分类、二级分类、品名、最低价、平均价、最高价、规格、产地、单位、发布日期,清洗字符串去除空白字符和无
立库发货系统
一、立项背景和目标 立项背景:半导体大客户发货产线物料多(平库/立库料)、质检与包装标准高。传统人工分拣易错发漏发、无超重预警且 ERP/WMS 数据同步滞后。 建设目标:打造软硬件一体的仓储发货 MES 系统,联动 PTL 库位灯、电子称与扫码枪,实现二次分拣自动化、分箱称重智能化、结单出库防错化及与 ERP/WMS 的数据实时闭环。 二、软件功能与核心功能模块 二次分拣与库位管理:实现运单与空库位动态绑定、平库/立库料差异化校验、质检状态(QTResult)核验与执行人管理。 PTL 库位灯硬件控制:基于 Modbus/OPC UA 实现三色指示(绿灯:绑定/继续,黄灯:超重满箱,红灯:齐备待结单)与按键灭灯实时响应。 智能称重与满箱拆分:实时累加箱重,超重($\ge 30\text{kg}$)自动触发满箱作业,控制异步打印箱体标签/明细并自增箱号。 结单出库与系统交互:校验物料齐备性(CheckWaybillCompletion),生成出库五大表(ERP、明细、包装、需求、地址),执行存储过程同步 WMS 并打印发货单。 移库归档与运单恢复:结单数据移库至历史表(*_History);配套 7 步恢复 SOP,支持异常运单数据反向还原与库位解绑。 三、业务流程与功能路径描述 整体业务主路径: 扫码验证 $\rightarrow$ 运单绑库 $\rightarrow$ 物料分拣与称重 $\rightarrow$ 满箱/结单判定 $\rightarrow$ 按键灭灯确认 $\rightarrow$ 出库确认与移库 核心功能子路径: 运单绑库:扫运单号 $\rightarrow$ 校验汇料状态与可用库位 $\rightarrow$ 绑库亮绿灯 $\rightarrow$ 放入单据按灭灯确认 $\rightarrow$ 运单状态切为已绑定(PaState=40)。 分拣与称重:扫物料码 $\rightarrow$ 校验质检与数量 $\rightarrow$ 计算箱重: 超重($\ge 30\text{kg}$):亮黄灯提示满箱 $\rightarrow$ 打印标签明细 $\rightarrow$ 按灭灯更新箱号; 正常($< 30\text{kg}$):更新分拣数 $\rightarrow$ 齐备亮红灯待结单,未齐备亮绿灯继续分拣。 结单出库:红灯灭灯触发 $\rightarrow$ 创建保存 CaseInfo $\rightarrow$ 打印标签明细 $\rightarrow$ 批量写入出库五大表 $\rightarrow$ 存储过程同步 WMS $\rightarrow$ 移库至历史表 $\rightarrow$ 运单状态切为完成(PaState=90) $\rightarrow$ 释放清空库位。
项目层级任务流转管理系统
本系统为中小 IT 企业内部研发管理后台,核心解决客户需求经多层转述后信息失真、返工频繁、沟通链路混乱的痛点,仅内部员工登录使用,客户不注册账号,通过角色权限隔离规范全流程流转: 用户权限管理 划分项目经理、小组组长、开发组员三类角色,管控账号启停;记录人员擅长技术、忙闲状态,基于 RBAC 实现接口权限拦截,数据分层隔离,普通开发无法查看原始客户需求。 项目基础管理 由项目经理创建项目,填写项目名称、交付截止时间,区分待分配、开发中、迭代修改、测试完成、项目交付五类项目状态。 原始需求录入存档 项目经理线下对接客户后,完整录入客户原话、上传沟通附件,禁止私自修改客户需求内容;需求仅本项目组长可见,隔绝开发人员直接接触原始客户诉求。 任务拆解与派发 组长查看全部需求,结合组员空闲状态与技术能力拆分细分任务,填写任务内容、优先级、截止日期并分配给对应开发;开发仅能查看自身绑定任务,任务支持未开始、开发中、已提交、已驳回状态流转。 问题逐级反馈 开发人员针对自有任务提交开发阻碍问题,组长可回复指导意见,支持多条问题整合汇总后统一提交给项目经理,再由项目经理线下同步客户,杜绝越级沟通。 项目归档复盘 项目交付完成后,系统归档全部需求、任务、问题记录,支持导出 PDF 复盘文档;数据采用逻辑删除留存,便于后续追溯查看。 配套安全能力:密码加密存储、全操作日志留痕、上传文件安全校验、多表操作事务保障、全局异常统一拦截;架构预留扩展字段,可迭代工时统计、绩效考核等模块,单体架构支持后续拆分为微服务。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服