再也不用線上倒數據了,使用 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

浙公網安備 33010602011771號