Python 使用 Faker 生成假数据

2021-01-20 宋洋葱 宋洋葱 1 min

前言

faker可以生成非常真实的随机数据,通过它的提供者,可以生成诸如姓名、地址、ip、公司名、银行卡号、邮编、ISBN、时间、手机号、职业等等数据。通过本地话配置可支持设置不同的语言和地区。

另一个相似的工具是 mimesis

安装

pip install faker

使用

简单使用

from faker import Faker
# 设置语言
fake = Faker('zh_CN')

print(fake.name())
print(fake.random_int(0, 100))
print(fake.random_number(digits=10))

print(fake.lexify(text='测试字符串:????', letters='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'))

真实案例

请使用 python3 的 Faker 模块生成一个 30 万的用户信息,并写入名为 users30w.json 的文件,然后使用 post 请求把 用户信息发送到 localhost:8080/save/users 。

# pip3 install Faker requests
from faker import Faker
import json
import requests

# 创建 Faker 实例
fake = Faker()

# 生成用户信息
users = []
for i in range(300000):
    user = {
        "id": fake.uuid4(),
        "userPoolId":"64916f78cc768114483d9924",
        "status": "Activated",
        "email": fake.email(),
        "username": fake.user_name(),
        "nickname": fake.name(),
        "gender": fake.random_element(["M", "F", "U"])
    }
    #print(f'{i}:{user["id"]}')

Comments