影刀RPA|列表强转str实现数据清洗
评论
收藏

影刀RPA|列表强转str实现数据清洗

经验分享
小可耐教你学影刀RPA【哔哩哔哩同名】
2025-08-22 16:40·浏览量:585
小可耐教你学影刀RPA【哔哩哔哩同名】
影刀高级开发者
发布于 2025-07-24 22:55更新于 2025-08-22 16:40585浏览

用户需求如下需要找到含有车型关键字且没备注的订单号~~~

正常思路是大元素找小元素简简单单直接解决,

但是抖音这个网站非常非常奇葩~~~

只能捕获所有的tr,没有大元素的概念

后面我就想了一个办法,用数学题是思路去解决

全部抓取后转成文本去判断,

当然我们肯定需要先对订单号分组,分组这个东西就交给魔法指令了


提示语如下

源码如下

from typing import *
try:
    from xbot.app.logging import trace as print
except:
    from xbot import print


def group_orders_by_order_number(order_data_list):
    """
    title: 订单号分组处理
    description: 将订单数据列表按照订单号进行分组,生成二维列表,每组包含同一订单号的所有数据项。
    inputs: 
        - order_data_list (list): 包含订单数据的列表,eg: ["订单编号 123456", "商品信息...", "订单编号 789012", "商品信息..."]
    outputs: 
        - grouped_orders (list): 按订单号分组的二维列表,eg: [["订单编号 123456", "商品信息..."], ["订单编号 789012", "商品信息..."]]
    """
    
    if not isinstance(order_data_list, list):
        raise ValueError("输入必须是列表类型")
    
    if not order_data_list:
        return []
    
    def _is_order_number_line(line):
        """判断是否为订单号行"""
        return line.strip().startswith("订单编号")
    
    grouped_orders = []
    current_group = []
    
    for item in order_data_list:
        # 如果是新订单号且当前组不为空,则保存当前组并创建新组
        if _is_order_number_line(item) and current_group:
            grouped_orders.append(current_group)
            current_group = [item]
        else:
            current_group.append(item)
    
    # 添加最后一组
    if current_group:
        grouped_orders.append(current_group)
    
    return grouped_orders
    

代码如下




收藏
全部评论1
最新
发布评论
评论