大模型-爬虫prompt

爬虫怎么写prompt

以下基于deepseek r1 总结:

以下是为大模型设计的结构化Prompt模板,用于生成专业级网络爬虫Python脚本。此Prompt包含技术约束、反检测策略和数据处理要求,可根据具体需求调整参数:

爬虫脚本生成Prompt模板1

请按照以下要求生成一个Python网络爬虫脚本:

1. 目标网站信息

  • 网站URL:[在此填写具体网址,如https://example.com/products\]
  • 目标数据:[明确描述需要爬取的数据,如商品名称/价格/评论等]
  • 页面类型:[静态HTML/动态渲染/API接口/分页列表/详情页等]

2. 技术要求

python 复制代码
# 必选技术栈
from selenium.webdriver import ChromeOptions
from bs4 import BeautifulSoup
import pandas as pd
import requests

3. 反检测要求

  • 实现随机User-Agent轮换
  • 设置合理请求间隔(2-5秒)
  • 处理Cloudflare等反爬机制
  • 使用IP代理池(如需)

3. 数据存储规范

输出格式:JSON/CSV/Excel(选择一种)

字段清洗要求:[如去除HTML标签/统一货币格式等]

去重机制:[基于URL/ID/时间戳等]

5. 异常处理

HTTP错误码处理(403/404/500等)

超时重试机制(最多3次)

反爬触发时的自动规避策略

6. 性能优化

并发请求数限制

缓存已爬取URL

增量爬取支持

7. 输出示例

json 复制代码
// 展示期望的数据结构样例
{
  "product_id": "123",
  "name": "智能手机",
  "price": {"original": 5999, "discount": 5499},
  "rating": 4.5
}

8. 特殊要求

是否需要登录/验证码处理

是否处理JavaScript渲染内容

是否有地理限制

请生成完整可运行的Python代码,包含:

反爬绕过实现

数据解析逻辑

存储模块

日志记录系统

进度监控功能


爬虫脚本生成Prompt模板2(供参考)

  1. 技术栈明确化

    要求使用:

    • requests-html 处理动态渲染
    • Scrapy-Redis 实现分布式爬取
    • PyQuery 代替XPath解析
  2. 反爬策略强化

    需要实现:

    • 鼠标移动轨迹模拟
    • 指纹浏览器配置
    • TLS指纹混淆
  3. 数据合规性要求

    遵守:

    • robots.txt规则
    • 欧盟GDPR数据保护
    • 目标网站ToS条款
  4. 性能指标量化

    控制:

    • 请求频率 ≤ 10次/分钟
    • 内存占用 < 500MB
    • 断点续爬功能

示例输出(简版爬虫)

根据上述Prompt,大模型可能生成的代码框架:

python 复制代码
import requests
from fake_useragent import UserAgent
import time
import json
from bs4 import BeautifulSoup

class ProfessionalCrawler:
    def __init__(self):
        self.session = requests.Session()
        self.ua = UserAgent()
        self.proxies = {"http": "socks5://127.0.0.1:1080"}
        
    def get_random_headers(self):
        return {
            'User-Agent': self.ua.random,
            'Accept-Language': 'en-US,en;q=0.9',
            'Referer': 'https://www.google.com/'
        }
    
    def scrape(self, url):
        try:
            resp = self.session.get(
                url,
                headers=self.get_random_headers(),
                proxies=self.proxies,
                timeout=10
            )
            resp.raise_for_status()
            
            # 使用BS4解析
            soup = BeautifulSoup(resp.text, 'lxml')
            data = {
                'title': soup.find('h1').get_text().strip(),
                'price': float(soup.select('.price')[0].text.replace('$', ''))
            }
            
            # 智能延迟
            time.sleep(max(2, min(5, len(resp.text)/5000)))
            
            return data
            
        except Exception as e:
            print(f"爬取失败: {str(e)}")
            return None

if __name__ == '__main__':
    crawler = ProfessionalCrawler()
    result = crawler.scrape("https://example.com/product/123")
    with open('output.json', 'w') as f:
        json.dump(result, f, indent=2)

Prompt优化建议

  1. 增加约束条件

  2. 补充要求:

    • 代码必须通过Pylint检测
    • 支持Docker容器化部署
    • 包含单元测试模块
  3. 指定架构模式

    要求采用:

    • 生产者-消费者模式处理队列
    • 状态机管理爬取流程
    • 支持Prometheus监控
  4. 法律声明

    必须包含:

    • 版权声明注释
    • 使用条款确认
    • 数据删除接口
相关推荐
V搜xhliang02467 小时前
任务规划双路径经典规划与分层强化学习
人工智能·深度学习·机器学习·语言模型·自然语言处理
算法狗28 小时前
大模型面试题:prefixDecodercausalDecoder和EncoderDecodder的区别是什么
人工智能·深度学习·语言模型
算法狗28 小时前
大模型面试题:Transformer架构如何克服Seq2Seq模型的挑战
人工智能·深度学习·语言模型
老鱼说AI8 小时前
大模型面试第二期:层归一化篇
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·chatgpt
小超同学你好10 小时前
Langgraph 4. 反思 Reflection
人工智能·语言模型·langchain
tobybo11 小时前
【openClaw】openClaw3.8 Windows安装 + [deepseek,discord] 基本流程
discord·deepseek·openclaw·龙虾·openclaw3.8
AC赳赳老秦11 小时前
国产化AI运维新趋势:DeepSeek赋能国产算力部署的高效故障排查
大数据·人工智能·python·django·去中心化·ai-native·deepseek
Lvan的前端笔记11 小时前
提示词Prompt技巧
prompt
1941s11 小时前
01-LLM 基础与提示词工程:从 API 调用到 Prompt 优化技巧
人工智能·python·prompt
CodeLinghu12 小时前
我写了一个OpenClaw一健部署工具,引发了3w人围观
人工智能·python·语言模型·llm