python:假的身份信息生成模块faker

前言

发现一个有趣的python模块(faker),他支持生成多个国家语言下的假身份信息,包含人名、地址、邮箱、公司名、电话号码、甚至是个人简历!

你可以拿它做一些自动化测试,或一些跟假数据有关的填充工作。

代码

python 复制代码
from faker import Faker

# 英文支持:en_US
# 中文支持:zh_CN (中国) zh_TW (中国台湾)
# 法语支持:fr_FR (法国)
# 德语支持:de_DE (德国)
# 西班牙语支持:es_ES (西班牙)
# 日语支持:ja_JP (日本)
# 俄语支持:ru_RU (俄罗斯)
print('-----------------------------------')

# 创建一个 Faker 实例
# 默认地区为美国:en_US
fake = Faker()

# 生成一些基本的假数据
print(fake.name())           # 姓名
print(fake.address())        # 地址
print(fake.email())          # 电子邮件
print(fake.company_email())          # 公司电子邮件
print(fake.phone_number())   # 电话号码
print(fake.job())            # 职业
print(fake.company())        # 公司名
print(fake.simple_profile(sex=None)) # 简略个人信息,包括用户名,姓名,性别,地址,邮箱,出生日期。
print(fake.profile(sex=None)) # 详略个人信息,比简略个人信息多出公司名、血型、工作、位置、域名等等信息。

# 参数选项:length:密码长度;special_chars:是否能使用特殊字符;digits:是否包含数字;upper_case:是否包含大写字母;lower_case:是否包含小写字母。
# 默认情况:length=10, special_chars=True, digits=True, upper_case=True, lower_case=True
print(fake.password()) # 密码

print(fake.date())  # 生成一个随机日期 (yyyy-mm-dd)
print(fake.date_of_birth())  # 生成一个随机出生日期
print(fake.text(max_nb_chars=200))  # 生成一段随机文本,长度不超过200字符
print(fake.credit_card_number(card_type=None))  # 生成随机的信用卡号码
print(fake.date_time())            # 随机的日期时间
print(fake.date_this_century())   # 本世纪内的随机日期
print(fake.date_time_this_year())  # 今年内的随机日期时间

print('-------------------------------------------')
# 生成中文假数据
fake_zh = Faker('zh_CN')

print(fake_zh.name())        # 中文名
print(fake_zh.address())     # 中文地址
print(fake_zh.email())          # 电子邮件
print(fake_zh.phone_number())   # 电话号码
print(fake_zh.simple_profile(sex='M')) # 简略个人信息,包括用户名,姓名,性别,地址,邮箱,出生日期。
print(fake_zh.profile(sex='M')) # 详略个人信息,比简略个人信息多出公司名、血型、工作、位置、域名等等信息。
print(fake_zh.job())            # 职业

# fake.company():公司名,比如惠派国际公司信息有限公司
# fake.company_suffix():公司名后缀(公司性质),比如网络有限公司
# fake.company_prefix():公司名前缀,比如鑫博腾飞
print(fake_zh.company())        # 公司名,比如惠派国际公司信息有限公司
print(fake_zh.company_suffix())        # 公司名后缀(公司性质),比如网络有限公司
print(fake_zh.company_prefix())        # 公司名前缀,比如鑫博腾飞

print(fake_zh.text(max_nb_chars=200))  # 生成一段随机文本,长度不超过200字符

# M:代表 Male(男性)
# F:代表 Female(女性)
相关推荐
老胖闲聊2 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1182 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
曹勖之3 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2
lyaihao4 小时前
使用python实现奔跑的线条效果
python·绘图
ai大师4 小时前
(附代码及图示)Multi-Query 多查询策略详解
python·langchain·中转api·apikey·中转apikey·免费apikey·claude4
小小爬虾5 小时前
关于datetime获取时间的问题
python
蓝婷儿6 小时前
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
开发语言·python·学习
chao_7896 小时前
链表题解——两两交换链表中的节点【LeetCode】
数据结构·python·leetcode·链表
大霞上仙7 小时前
nonlocal 与global关键字
开发语言·python
Mark_Aussie7 小时前
Flask-SQLAlchemy使用小结
python·flask