购买记录截图生成器, 京东订单p图生成器, 淘宝购买截图生成【python】

简介: 这个代码实现了电商购买记录截图生成器,包含以下功能:模拟京东和淘宝的订单界面

下载地址:https://www.pan38.com/dow/share.php?code=JCnzE 提取密码:8719

这个代码实现了电商购买记录截图生成器,包含以下功能:

模拟京东和淘宝的订单界面
自动生成随机的订单号、商品信息和价格
支持多种订单状态显示
计算订单总金额
使用前需要安装Pillow和Faker库:
pip install pillow faker

代码使用了面向对象设计,可以轻松扩展支持更多电商平台。生成的截图会保存在output目录下。

import os
from PIL import Image, ImageDraw, ImageFont
import random
import datetime
import textwrap
from faker import Faker

fake = Faker('zh_CN')

class EcommerceScreenshotGenerator:
def init(self):
self.font_path = "simhei.ttf"
self.template_dir = "templates"
self.output_dir = "output"
self._create_dirs()

def _create_dirs(self):
    os.makedirs(self.template_dir, exist_ok=True)
    os.makedirs(self.output_dir, exist_ok=True)

def _load_font(self, size):
    try:
        return ImageFont.truetype(self.font_path, size)
    except:
        return ImageFont.load_default()

def _generate_order_number(self, platform):
    prefix = {
        "jd": "JD",
        "taobao": "TB"
    }.get(platform, "OR")
    return f"{prefix}{datetime.datetime.now().strftime('%Y%m%d')}{random.randint(1000,9999)}"

def _generate_product_info(self, count=1):
    products = []
    for _ in range(count):
        product = {
            "name": fake.text(max_nb_chars=20)[:-1],
            "price": round(random.uniform(50, 9999), 2),
            "quantity": random.randint(1, 5),
            "sku": f"SKU{fake.random_number(digits=8)}",
            "status": random.choice(["待发货", "已发货", "已完成", "已取消"])
        }
        products.append(product)
    return products

def _calculate_total(self, products):
    return sum(p["price"] * p["quantity"] for p in products)

def generate_jd_screenshot(self):
    # 创建空白图片
    img = Image.new('RGB', (750, 1334), color=(255, 255, 255))
    draw = ImageDraw.Draw(img)

    # 设置字体
    title_font = self._load_font(24)
    normal_font = self._load_font(18)
    small_font = self._load_font(14)

    # 生成订单信息
    order_num = self._generate_order_number("jd")
    order_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    products = self._generate_product_info(random.randint(1, 5))
    total = self._calculate_total(products)

    # 绘制京东头部
    draw.rectangle([(0, 0), (750, 120)], fill=(200, 0, 0))
    draw.text((30, 50), "京东", fill=(255, 255, 255), font=title_font)

    # 绘制订单信息
    y_offset = 150
    draw.text((30, y_offset), f"订单编号: {order_num}", fill=(0, 0, 0), font=normal_font)
    y_offset += 40
    draw.text((30, y_offset), f"下单时间: {order_time}", fill=(0, 0, 0), font=normal_font)
    y_offset += 60

    # 绘制商品信息
    for product in products:
        draw.text((30, y_offset), product["name"], fill=(0, 0, 0), font=normal_font)
        y_offset += 30
        draw.text((30, y_offset), f"¥{product['price']} x{product['quantity']}", fill=(150, 150, 150), font=small_font)
        y_offset += 30
        draw.text((30, y_offset), f"状态: {product['status']}", fill=(0, 0, 0), font=small_font)
        y_offset += 40
        draw.line([(20, y_offset), (730, y_offset)], fill=(200, 200, 200), width=1)
        y_offset += 20

    # 绘制总计
    draw.text((30, y_offset), f"实付款: ¥{total}", fill=(200, 0, 0), font=title_font)

    # 保存图片
    output_path = os.path.join(self.output_dir, f"jd_order_{order_num}.png")
    img.save(output_path)
    return output_path

def generate_taobao_screenshot(self):
    # 创建空白图片
    img = Image.new('RGB', (750, 1334), color=(255, 255, 255))
    draw = ImageDraw.Draw(img)

    # 设置字体
    title_font = self._load_font(24)
    normal_font = self._load_font(18)
    small_font = self._load_font(14)

    # 生成订单信息
    order_num = self._generate_order_number("taobao")
    order_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    products = self._generate_product_info(random.randint(1, 5))
    total = self._calculate_total(products)

    # 绘制淘宝头部
    draw.rectangle([(0, 0), (750, 120)], fill=(255, 80, 0))
    draw.text((30, 50), "淘宝", fill=(255, 255, 255), font=title_font)

    # 绘制订单信息
    y_offset = 150
    draw.text((30, y_offset), f"订单号: {order_num}", fill=(0, 0, 0), font=normal_font)
    y_offset += 40
    draw.text((30, y_offset), f"创建时间: {order_time}", fill=(0, 0, 0), font=normal_font)
    y_offset += 60

    # 绘制商品信息
    for product in products:
        draw.text((30, y_offset), product["name"], fill=(0, 0, 0), font=normal_font)
        y_offset += 30
        draw.text((30, y_offset), f"¥{product['price']} x{product['quantity']}", fill=(150, 150, 150), font=small_font)
        y_offset += 30
        draw.text((30, y_offset), f"状态: {product['status']}", fill=(0, 0, 0), font=small_font)
        y_offset += 40
        draw.line([(20, y_offset), (730, y_offset)], fill=(200, 200, 200), width=1)
        y_offset += 20

    # 绘制总计
    draw.text((30, y_offset), f"实付款: ¥{total}", fill=(255, 80, 0), font=title_font)

    # 保存图片
    output_path = os.path.join(self.output_dir, f"taobao_order_{order_num}.png")
    img.save(output_path)
    return output_path

if name == "main":
generator = EcommerceScreenshotGenerator()
jd_path = generator.generate_jd_screenshot()
taobao_path = generator.generate_taobao_screenshot()
print(f"京东订单截图已生成: {jd_path}")
print(f"淘宝订单截图已生成: {taobao_path}")

相关文章
|
2天前
|
缓存 API 网络架构
淘宝item_search_similar - 搜索相似的商品API接口,用python返回数据
淘宝联盟开放平台中,可通过“物料优选接口”(taobao.tbk.dg.optimus.material)实现“搜索相似商品”功能。该接口支持根据商品 ID 获取相似推荐商品,并返回商品信息、价格、优惠等数据,适用于商品推荐、比价等场景。本文提供基于 Python 的实现示例,包含接口调用、数据解析及结果展示。使用时需配置淘宝联盟的 appkey、appsecret 和 adzone_id,并注意接口调用频率限制和使用规范。
|
15天前
|
JSON API 数据安全/隐私保护
【干货满满】分享淘宝API接口到手价,用python脚本实现
淘宝开放平台通过API可获取商品到手价,结合商品详情与联盟接口实现优惠计算。需使用AppKey、AppSecret及会话密钥认证,调用taobao.tbk.item.info.get接口获取最终价格。代码示例展示签名生成与数据解析流程。
|
17天前
|
JSON 缓存 API
深度分析淘宝API接口,用Python脚本实现
本内容深入解析淘宝开放平台 API 的接口设计与 Python 实现,涵盖接口体系、认证机制、签名规则及限流策略,并提供完整的 Python 调用框架,适用于电商系统对接与自动化运营。
|
19天前
|
存储 监控 算法
淘宝买家秀 API开发实录Python(2025)
本文讲述了作者在电商开发领域,尤其是对接淘宝买家秀 API 接口过程中所经历的挑战与收获。从申请接入、签名验证、频率限制到数据处理和实时监控,作者分享了多个实战经验与代码示例,帮助开发者更高效地获取和处理买家秀数据,提升开发效率。
|
1月前
|
Web App开发 数据安全/隐私保护 Python
万能ck提取登录软件,京东贴吧淘宝拼多多cookie提取工具,python框架分享
这个框架使用了Selenium进行浏览器自动化操作,包含了京东和淘宝的登录示例。代码展示了如
|
3月前
|
监控 供应链 数据挖掘
淘宝商品详情API接口解析与 Python 实战指南
淘宝商品详情API接口是淘宝开放平台提供的编程工具,支持开发者获取商品详细信息,包括基础属性、价格、库存、销售策略及卖家信息等。适用于电商数据分析、竞品分析与价格策略优化等场景。接口功能涵盖商品基础信息、详情描述、图片视频资源、SKU属性及评价统计的查询。通过构造请求URL和签名,可便捷调用数据。典型应用场景包括电商比价工具、商品数据分析平台、供应链管理及营销活动监控等,助力高效运营与决策。
276 26
|
1月前
|
测试技术 API 开发者
淘宝关键词搜索商品列表API接入指南(含Python示例)
淘宝关键词搜索商品列表API是淘宝开放平台的核心接口,支持通过关键词检索商品,适用于比价、选品、市场分析等场景。接口提供丰富的筛选与排序功能,返回结构化数据,含商品ID、标题、价格、销量等信息。开发者可使用Python调用,需注意频率限制与错误处理,建议先在沙箱环境测试。
|
14天前
|
算法 程序员 API
电商程序猿开发实录:淘宝商品python(2)
本文分享了开发者在对接淘宝商品详情API过程中的真实经历,涵盖权限申请、签名验证、限流控制、数据解析及消息订阅等关键环节,提供了实用的Python代码示例,帮助开发者高效调用API,提升系统稳定性与数据处理能力。
|
1月前
|
机器学习/深度学习 算法 API
淘宝图片搜索接口技术解析与Python实现
淘宝图片搜索接口(拍立淘)基于图像识别技术,允许用户上传商品图片查找相似或相同商品。自2014年上线以来,已服务数千万日活用户,显著提升购物体验。接口通过CNN、ANN等技术实现图像预处理、特征提取与相似度匹配,支持多种调用方式与参数设置。本文提供Python调用示例,便于开发者快速集成。
|
1月前
|
数据采集 XML 数据处理
淘宝商家采集工具,淘宝买家联系方式采集,淘宝卖家旺旺采集软件【python】
以上代码实现了一个基础的淘宝数据采集框架,包含爬虫核心、数据处理和代理管理三个模块。

热门文章

最新文章

推荐镜像

更多