背景
每当建表以后,经常须要写一批假的数据,用于测试算法、数据量的压力测试、列表翻页、html
查看详情、数据关联等。这时就须要借助一款造数据的工具,它就是今天所要介绍的 Faker。python
介绍git
Faker 这个工具不限于语言、它支持:Python、Java、Ruby、PHP、NodeJS 等等。其目github
的是经过这个库,会生成一批假的数据。算法
如:仓库组常常须要一批数据来测试某个算法。业务组常常须要一批数据,让其余人知道这bash
个接口是否可用。某个字段应展现什么类型等等。app
今天我会以 Python 版本的 Faker 为例,来介绍这个工具的用处。ide
场景案例
假设已经有一个商品表,其字段以下:函数
我须要生成 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