You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python+Requests实现ERP与CRM集成:重复产品发送问题求助

问题分析与修复方案

核心问题

你的代码里查询CRM产品的逻辑在for循环外面,导致循环只给cod_produto_bling赋值了最后一个ERP产品的SKU,之后只检查了这一个产品,其他产品完全没做存在性校验,自然会重复发送已存在的产品。另外,仅靠状态码判断产品是否存在也不严谨——200只是请求成功,不代表返回结果里有产品数据。

修复后的代码

ploomes_url = 'https://public5-api2.ploomes.com/Products'

# 把查询逻辑放到for循环内部,每个ERP产品都做存在性检查
for product in produtos_bling:
    cod_produto_bling = product['codigo']
    # 查询Ploomes中是否存在对应Code的产品
    search_url = f'https://public5-api2.ploomes.com/Products?$filter=Code eq \'{cod_produto_bling}\''
    response_search = requests.get(search_url, headers=headers_ploomes)

    if response_search.status_code == 200:
        search_result = response_search.json()
        # 检查返回的数据集是否有内容,有则代表产品已存在
        if search_result.get('value') and len(search_result['value']) > 0:
            print(f"Produto '{cod_produto_bling}' já existe no Ploomes. Não será enviado novamente.")
            continue
    elif response_search.status_code != 404:
        # 非404的错误状态码,直接跳过当前产品
        print(f"Erro ao consultar produto {cod_produto_bling} no Ploomes: {response_search.status_code}")
        continue

    # 此处添加同步产品到Ploomes的代码
    # 示例:
    # product_payload = {
    #     "Code": cod_produto_bling,
    #     "Name": product['descricao'],
    #     # 其他所需字段
    # }
    # requests.post(ploomes_url, json=product_payload, headers=headers_ploomes)

额外优化建议

  • 减少API请求次数:循环里每次查一个产品会频繁调用API,效率低。可以先批量拉取Ploomes所有产品的Code列表,本地比对后再同步:
    # 先获取Ploomes所有产品的Code(只返回需要的字段,减少数据量)
    all_codes_url = 'https://public5-api2.ploomes.com/Products?$select=Code'
    response_all = requests.get(all_codes_url, headers=headers_ploomes)
    existing_codes = {item['Code'] for item in response_all.json().get('value', [])}
    
    # 本地循环比对,无需多次调用查询API
    for product in produtos_bling:
        cod_produto_bling = product['codigo']
        if cod_produto_bling in existing_codes:
            print(f"Produto '{cod_produto_bling}' já existe no Ploomes.")
            continue
        # 执行同步逻辑
    

内容的提问来源于stack exchange,提问作者Amanda Araujo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 00:06:03