python工具——Faker

Faker是一个Python软件包,可为用来生成伪造数据

安装

pip install Faker

安装好后,可以直接使用faker命令

$ faker -h
usage: faker [-h] [--version] [-v] [-o output] [-l LOCALE] [-r REPEAT]
[-s SEP] [--seed SEED] [-i [INCLUDE [INCLUDE ...]]]
[fake] [fake argument [fake argument ...]]

查看版本

$ faker --version
faker 4.1.1

eg:

生成地址

$ faker address
香港特别行政区长春县崇文北镇路i座 968587

生成3条json数据

复制代码
$ faker -r=3 profile name,address,birthdate
{'name': '张健', 'address': '上海市汕尾市南溪通辽路B座 479626', 'birthdate': dat
etime.date(1909, 7, 29)}

{'name': '祝磊', 'address': '香港特别行政区嘉禾县城北郭街O座 598882', 'birthdate
': datetime.date(1983, 4, 13)}

{'name': '黎雪', 'address': '江苏省南宁县房山何路Z座 717662', 'birthdate': datet
ime.date(1924, 7, 26)}
复制代码

在python中使用

data.py

from faker import Faker
faker = Faker(locale='zh_CN')
print(f'name: {faker.name()}')
print(f'address: {faker.address()}')
print(f'date: {faker.date()}')

结果

$ python data.py
name: 李桂兰
address: 湖南省太原县吉区陈街I座 295072
date: 1995-06-18

使用fastapi生成json数据(FastAPI

main.py

复制代码
from fastapi import FastAPI使用
from faker import Faker
faker = Faker(locale='zh_CN')
app = FastAPI()

@app.get("/")
def home():
    # 生成数据
    json_arr = []
    for one in range(3):
        json_data = {}
        json_data['name']= faker.name()
        json_data['address']= faker.address()
        json_data['email']= faker.email()
        json_data['job']= faker.job()
        json_arr.append(json_data)
    return json_arr
复制代码

运行

 uvicorn main:app

http://127.0.0.1:8000/结果

复制代码
[
    {
        "name": "杨文",
        "address": "江苏省刚市永川沈阳街V座 431567",
        "email": "juanxiao@pingzhong.cn",
        "job": "给排水/暖通工程"
    },
    {
        "name": "崔彬",
        "address": "海南省西宁市安次上海街N座 841699",
        "email": "jing32@hao.com",
        "job": "手机应用开发工程师"
    },
    {
        "name": "周慧",
        "address": "内蒙古自治区沈阳县龙潭侯路n座 920522",
        "email": "aye@gmail.com",
        "job": "供应链总监"
    }
]
复制代码

文档  https://faker.readthedocs.io/en/stable/

git地址  https://github.com/joke2k/faker

posted @   慕尘  阅读(1007)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2020-01-13 windows下nginx使用
点击右上角即可分享
微信分享提示