ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

newton-quotation-pdf-extraction

从PDF报价单中提取产品信息(型号、数量、价格、币种、图片)。当用户需要从PDF报价单或产品目录中提取结构化产品数据时使用,特别适用于电商产品列表或价格表。

skill-install — Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/1688aiinfra/newton-quotation-pdf-extraction
Or

报价单PDF信息提取技能 (Quotation PDF Extraction)

从PDF产品目录中提取结构化产品信息,包括产品型号、起批量、价格、币种和产品图片。

核心原则

1. 先理解PDF结构,再设计方案(关键!)

必须执行的预分析步骤:

在编写提取代码前,必须先分析PDF的文本结构,理解以下关键信息:

  1. 每行产品数量:一行包含1个还是多个产品?

    • 常见模式:每行1个产品、每行3个产品、每行4个产品
    • 检查方法:查看包含型号和数量的行,统计 (型号 数量) 模式出现次数
  2. 数据组织方式

    • 型号和数量是否在同一行?
    • 价格在同一行还是下一行?
    • 是否存在干扰文本(如装饰字符、页眉页脚)?
  3. 结构分析代码模板:

import pdfplumber
import re

def analyze_pdf_structure(pdf_path):
    """分析PDF文本结构,理解产品组织方式"""
    with pdfplumber.open(pdf_path) as pdf:
        for page_num in range(min(5, len(pdf.pages))):  # 分析前5页
            page = pdf.pages[page_num]
            text = page.extract_text()
            lines = text.strip().split('\n') if text else []
            
            print(f'\n===== 第{page_num+1}页 - {len(lines)}行 =====')
            
            for i, line in enumerate(lines):
                # 高亮包含型号和数量的行
                if re.search(r'[A-Za-z0-9\-]+\s*\(\d+\s*Peças?\)', line):
                    # 统计这一行有多少个产品
                    products_in_line = len(re.findall(r'[A-Za-z0-9\-]+\s*\(\d+\s*Peças?\)', line))
                    print(f'  [{i}] >>> {line} ({products_in_line}个产品)')
                elif i < 30:
                    print(f'  [{i}] {line}')

# 使用
analyze_pdf_structure("/path/to/catalog.pdf")

分析示例输出:

===== 第2页 - 52行 =====
  [0] Catálogo Caixa Master
  [16] >>> JF-181 (144 Peças) JF-43 (144 Peças) JF-44 (144 Peças) (3个产品)
  [17] >>> R$12,00 R$11,00 R$11,00
  ...
  [33] >>> MY-46 (144 Peças) MY-48 (144 Peças) MY-62 (144 Peças) (3个产品)
  [34] >>> R$9,00 R$12,50 R$12,00

结论:每行包含3个产品,型号数量在一行,价格在下一行。

2. 数据必须来自PDF提取

  • 禁止硬编码:所有产品数据必须从PDF动态提取
  • 禁止猜测:币种必须询问用户,不能假设

提取流程

Phase 1: PDF结构分析

import fitz
import pdfplumber

def analyze_pdf_structure(pdf_path):
    """分析PDF结构,理解产品组织方式"""
    doc = fitz.open(pdf_path)
    
    for page_num in range(len(doc)):
        page = doc[page_num]
        
        # 分析图片分布
        image_list = page.get_images(full=True)
        print(f"第{page_num+1}页: {len(image_list)}张图片")
        
        for img in image_list:
            xref = img[0]
            rects = page.get_image_rects(xref)
            if rects:
                x0, y0, x1, y1 = rects[0]
                print(f"  xref{xref}: x={x0:.0f}-{x1:.0f}, y={y0:.0f}-{y1:.0f}")
    
    doc.close()

Phase 2: 提取产品信息

关键:正确处理每行多个产品的情况

Metadata

Stars4473
Views1
Updated2026-05-01
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build — we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-1688aiinfra-newton-quotation-pdf-extraction": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.

Related Skills

alphaclaw

AlphaClaw 是 SkillHub 技能商店的 CLI 工具,用于搜索、安装、发布和管理 Claude Code 技能。支持 AK/SK 登录、关键词搜索技能、一键安装/发布技能包、收藏和评论等完整功能。

1688aiinfra 4473

1688-88syt

线下B2B交易的得力帮手,一句话搞定全流程操作!无论您是卖家还是买家,只需一句指令,即可轻松完成电子合约(采购单/合同)创建、签署、确认收货、退款等核心操作,全面支持账号状态查询、实名认证、绑卡及交易,让每一步交易流程更清晰、更可控。通过智能化交互,实现交易流程数字化,提升协作效率,保障资金流转安全,助力企业高效运营。专注每一次B2B交易,让生意更稳、更快、更省心!。用户提到 88 生意通、采购单、签署、退款、确认收货、大额、批量、实名、绑卡、主账号、卖家或买家问题时使用。

1688aiinfra 4473

ozon-product-selection

Ozon电商选品工具:根据用户指定的品类,自动搜索市场趋势、提取热门细分关键词、 调用1688搜索API逐一选品,按筛选条件过滤后输出每个细分市场的最优商品推荐。 触发词:寻找Ozon蓝海商品、Ozon潜力爆品、Ozon可铺货商品、Ozon可卖的货盘、 Ozon选品、帮我选品、找Ozon能卖的商品、Ozon热门商品推荐。

1688aiinfra 4473

alphashop-sel-product-search

商品搜索API SKILL:通过关键词搜索发现Amazon/TikTok平台商品。 支持价格、销量、评分、上架时间等多维度筛选条件。 通过 AlphaShop REST API 调用遨虾AI选品系统的商品搜索服务。

1688aiinfra 4473

1688-product-find

1688智能找商品能力。理解用户找商品、找同款等需求,通过文本、图片或链接搜索匹配商品。 触发词:找商品、找同款、搜商品、想要 XX、帮我找、图片找货、链接找货、以图搜图。

1688aiinfra 4473