再也不用线上倒数据了,使用 Faker 来造一批假的数据吧。

 

背景
每当建表之后,常常需要写一批假的数据,用于测试算法、数据量的压力测试、列表翻页、

查看详情、数据关联等。这时就需要借助一款造数据的工具,它就是今天所要介绍的 Faker。

 

介绍

Faker 这个工具不限于语言、它支持:Python、Java、Ruby、PHP、NodeJS 等等。其目

的是通过这个库,会生成一批假的数据。

如:仓库组经常需要一批数据来测试某个算法。业务组经常需要一批数据,让其他人知道这

个接口是否可用。某个字段应展示什么类型等等。

今天我会以 Python 版本的 Faker 为例,来介绍这个工具的用处。

 

场景案例
假设已经有一个商品表,其字段如下:

我需要生成 1W 条这样的数据,用于统计我每个用户创建了多少个商品。

复制代码
# !/bin/bash python
# Author wubaiqing <wubaiqing@vip.qq.com>

from faker import Faker

fake = Faker('zh_CN')

goodsList = []

# 生成 1W 条数据
for _ in range(0, 10000):
    goodsList.append({
        'goods_id': fake.pyint(), # * 看场景(自增ID通常不需要设置)
        'title': fake.sentence(20), # 随机生成20个汉字
        'index_image_url': fake.image_url(400, 400), # 生成 400x400 的图片(通常可以访问)
        'created_at': fake.past_date('-1d').isoformat(), # 生成一个时间
        'is_delete': fake.boolean(), # 随机生成一个 Boolean 类型
        'created_user_id': fake.pyint() # 随机生成一个数字
    })

print 'list length : %d' % len(goodsList)
复制代码

 

以下是常用函数,详细可以看 Faker 手册:
1. sentence 随机生成字符串,根据语言类型可生成汉字。
2. image_url 随机生成一张指定的图片,大多数情况可以访问。
3. boolean 随机生成一个 Boolean 类型。

生成完的商品,批量导出 Excel 或批量入库即可。这时就有了大
量的数据可供我们使用。

 

参考链接
1. Python Faker:https://github.com/joke2k/faker
2. Python Faker 手册:https://faker.readthedocs.io/en/master/locales/zh_CN.html#faker-providers-address
3. PHP Faker:https://github.com/fzaninotto/Faker
4. Ruby Faker:https://github.com/stympy/faker

posted @   吴佰清  阅读(2214)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
点击右上角即可分享
微信分享提示