高质量爬虫采集运维脚本编写提示词
本提示词方案专为需要编写高质量、可维护、生产级爬虫与运维脚本的开发者设计,提供从角色定位到...
提示词内容
复制角色定义与任务定位
请以“资深运维开发工程师”的身份,以“编写一个可直接部署于生产环境、具备高稳定性与可维护性的爬虫采集或系统运维脚本”为核心目标来使用以下提示词方案。你的产出应是专业、严谨、考虑周全的代码解决方案。
适用场景
- 需要从复杂或动态网站中稳定采集结构化数据的项目。
- 编写用于服务器状态监控、日志分析、批量文件处理或服务自动部署的运维脚本。
- 对现有脚本进行重构,提升其错误处理、日志记录和配置化管理水平。
- 为新项目搭建兼具功能性与工程规范的基础脚本框架。
核心提示词
以下提示词组合可直接或稍作修改后用于生成请求:
- “编写一个Python爬虫脚本,使用requests-html处理JavaScript渲染,集成RotatingProxyMiddleware进行IP轮换,包含指数退避重试机制和详细的日志记录(INFO/ERROR级别分别输出到文件和控制台)。”
- “创建一个Bash运维脚本,用于监控Nginx日志中的特定错误码(如5xx),当频率超过阈值时,自动发送告警邮件并尝试重启服务,脚本需包含配置文件解析和锁文件机制防止重复执行。”
- “设计一个用于批量下载并校验文件完整性的Python脚本,要求支持断点续传、MD5/SHA256校验、并发控制(使用threading或asyncio),并将任务状态持久化到SQLite数据库。”
风格方向
- 代码风格:遵循PEP 8(Python)或ShellCheck建议(Bash),函数模块化,注释清晰。
- 工程风格:采用配置与代码分离(如使用YAML/JSON配置文件)、面向异常编程、资源上下文管理(with语句)。
- 文档风格:在脚本头部包含清晰的功能说明、参数示例、环境依赖和修改日志。
构图建议
此处的“构图”指代码结构与逻辑流程的排布:
- 分层结构:采用“配置加载 -> 初始化(日志、客户端)-> 主循环/监控逻辑 -> 清理回收”的清晰主线。
- 逻辑流:对于爬虫,构建“请求调度 -> 解析 -> 数据清洗 -> 持久化 -> 异常处理”的管道。对于运维脚本,构建“状态采集 -> 条件判断 -> 触发动作 -> 结果反馈”的闭环。
- 焦点突出:将核心业务逻辑(如解析规则、判断逻辑)封装为独立函数,使其在代码结构中一目了然。
细节强化
- 健壮性细节:加入网络超时设置、用户代理池、针对反爬的请求头随机化;使用信号处理(signal)实现脚本优雅退出。
- 可观测性细节:在关键决策点输出结构化日志;为脚本添加--dry-run试运行模式;输出运行时统计信息(如处理数量、成功率、耗时)。
- 安全性细节:避免在代码中硬编码密钥;对输入参数进行严格的验证与过滤;使用子进程执行系统命令时防范注入风险。
- 维护性细节:使用版本号管理脚本;通过命令行参数(argparse)提供灵活控制;在关键函数添加类型注解(Python)。
使用建议
- 将“核心提示词”中的示例作为模板,替换其中的具体目标(如监控对象、采集网站)和关键技术选型(如替换代理中间件类型)以生成你的专属脚本。
- 在生成代码后,务必根据“细节强化”项进行人工审查和补充,特别是环境特定的路径、密钥管理等。
- 结合“风格方向”和“构图建议”,评估生成代码的结构是否清晰,必要时要求AI进行重构或添加注释。
- 此方案旨在提供生成高质量脚本的“配方”,实际使用时需根据具体生产环境的约束(如Python版本、防火墙规则)进行最终调整和测试。