Faker 一个生成虚拟数据的Python模块
时间:2022-07-22
本文章向大家介绍Faker 一个生成虚拟数据的Python模块,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
不会爬虫,没有数据怎么来练习,上次行哥给大家分享过数据集网站,有兴趣的可以看一下
但是就算是数据集还要去些个网站搜索下载,还是有些麻烦。
所以今天行哥给大家介绍一个Faker模块,一款基于Python的测试数据生成工具,无论是用于初始化数据库,创建XML文件,或是生成压测数据,Faker都是不错的选择。
- 1.Faker工具包
- 2.生成数据
- 2.1 获取随机数据
- 2.2 生成本地化数据
- 3.最后
1.Faker工具包
只需要使用pip便可下载该工具包
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: Jeremiah Brown
address: 32553 Brian Village Suite 438
West Jared, SC 86824
text: Care professional decision beautiful office although indeed. Newspaper away can prove history hour bank table. Area wear effect action war.
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())
3.最后
当然自动生成的数据都是一些随机组合成数据,不可以当真。如果需要更进一步生成更详细的,的可以查看官方文档:https://faker.readthedocs.io/en/master/locales/zh_CN.html#
- HDUOJ----4004The Frog's Games(二分+简单贪心)
- HDUOJ----4006The kth great number(最小堆...)
- HDUOJ----4501小明系列故事——买年货(三维背包)
- message 弹出窗口
- HDUOJ---1862EXCEL排序
- HDUOJ-----3591The trouble of Xiaoqian
- HDUOJ-----2571跳舞毯
- Facebook开源PyTorch版本fairseq翻译模型,训练速度提高50%
- MySQL数据清理的需求分析和改进
- Go 语言常量
- Go 语言结构
- Go 语言函数
- Go语言指针
- Go 语言指针作为函数参数
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Laravel5.1 框架关联模型之后操作实例分析
- PHP实现的多进程控制demo示例
- 你可能不知道的一些linux文件权限管理办法
- Laravel框架路由与MVC实例详解
- python实现学生管理系统开发
- 使用 chkconfig 和 systemctl 命令启用或禁用 Linux 服务的办法
- PHP defined()函数的使用图文详解
- 详解在Linux中清空或删除大文件内容的5种办法
- php和redis实现秒杀活动的流程
- CentOS 7中搭建NFS文件共享存储服务的完整步骤
- PHP检测一个数组有没有定义的方法步骤
- Yii2.0框架模型多表关联查询示例
- Yii2.0框架模型添加/修改/删除数据操作示例
- thinkphp5.1框架容器与依赖注入实例分析
- 在CentOS VPS上通过SSH安装 MySQL的办法图解