【Faker】——生成虚拟数据的Python模块


Faker模块,一款基于Python的测试数据生成工具,无论是用于初始化数据库,创建XML文件,或是生成压测数据,Faker都是不错的选择。

1、安装

pip install faker

如果下载速度比较慢的话,可以使用国内镜像源来下载

国内源:
- 清华:https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云:http://mirrors.aliyun.com/pypi/simple/
- 中国科学技术大学 https://pypi.mirrors.ustc.edu.cn/simple/
- 华中科技大学:http://pypi.hustunique.com/
- 山东理工大学:http://pypi.sdutlinux.org/
- 豆瓣:http://pypi.douban.com/simple/
例如:pip3 install -i https://pypi.doubanio.com/simple/ faker

2.生成数据

2.1 获取随机数据

使用faker.Factory.create()创造并初始化faker生成器,faker生成器可以通过访问按所需数据类型命名的属性来生成数据

from faker import Faker
faker = Faker() # 创建对象
print('name:', faker.name())
print('address:', faker.address())
print('text:', faker.text())
结果:
name: Brad Myers
address: PSC 5287, Box 9533
APO AE 26011
text: Meeting amount professor section reach trade. Stay factor research beat section maybe head production. Last they stand drug serious necessary season wrong.
Cultural rule my girl experience.

2.2 生成本地化数据

在创建对象的时候可以指定所在区域与语言生成想要的测试数据,当然也是支持中文数据的,在创建对象中加入"zh_CN"数据即可

from faker import Faker
faker = Faker("zh_CN")
for i in range(10):
    print('name:', faker.name())
结果:
name: 杜红
name: 魏玲
name: 刁柳
name: 赵欣
name: 白飞
name: 刘琳
name: 张娜
name: 王桂香
name: 赵芳
name: 冯建

这个工具包提供了多个方法来生成数据,利用这些方法来生成一个“女朋友”的详细数据非常简单

  • faker.providers.address # 地址
  • faker.providers.company # 公司
  • faker.providers.internet # 网络信息
  • faker.providers.job # 工作
  • faker.providers.lorem # 文本
  • faker.providers.person # 个人
  • faker.providers.phone_number # 手机号码
  • ker.providers.ssn

代码如下:

from faker import Faker
faker = Faker("zh_CN")
print('姓名:', faker.name())# 随机输出中文姓名
print('联系方式:', faker.phone_number())# 随机输出电话号码
print('地址:', faker.address())# 随机输出地址
print('公司:', faker.bs())# 随机输出公司
print('工作:', faker.job())# 随机输出工作
print('邮箱:', faker.company_email())# 随机输出邮箱
print('文本:', faker.text())
结果:
姓名: 李莉
联系方式: 14742502552
地址: 西藏自治区大冶市徐汇成都路r座 759487
公司: grow seamless schemas
工作: 兼职
邮箱: jingang@deng.net
文本: 或者建设就是组织的话国际.不过过程那个经济.之后软件不过工具.
制作那么操作程序这是.建设网站然后.
分析得到地方一切相关您的.方法系列空间现在帮助来自.
次数事情所以.关系因为进行联系.所以中心如此分析地区社区原因.
任何他的事情地区一下积分.计划中心行业使用系统.
这里完全作品关于不是.一些是否这是点击.城市不要这种所有也是关于的人.
介绍全国两个.事情人员次数.通过这个阅读主题学习增加.