Faker 一个生成虚拟数据的Python模块

简介: 不会爬虫,没有数据怎么来练习,上次行哥给大家分享过数据集网站,有兴趣的可以看一下


不会爬虫,没有数据怎么来练习,上次行哥给大家分享过数据集网站,有兴趣的可以看一下

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())

image.png3.最后

当然自动生成的数据都是一些随机组合成数据,不可以当真。如果需要更进一步生成更详细的,的可以查看官方文档:https://faker.readthedocs.io/en/master/locales/zh_CN.html#


相关文章
|
9天前
|
Python
在Python中,可以使用内置的`re`模块来处理正则表达式
在Python中,可以使用内置的`re`模块来处理正则表达式
25 5
|
13天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
22 1
|
14天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
14天前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
18天前
|
弹性计算 Linux iOS开发
Python 虚拟环境全解:轻松管理项目依赖
本文详细介绍了 Python 虚拟环境的概念、创建和使用方法,包括 `virtualenv` 和 `venv` 的使用,以及最佳实践和注意事项。通过虚拟环境,你可以轻松管理不同项目的依赖关系,避免版本冲突,提升开发效率。
|
19天前
|
Java 程序员 开发者
Python的gc模块
Python的gc模块
|
22天前
|
数据采集 Web App开发 JavaScript
python-selenium模块详解!!!
Selenium 是一个强大的自动化测试工具,支持 Python 调用浏览器进行网页抓取。本文介绍了 Selenium 的安装、基本使用、元素定位、高级操作等内容。主要内容包括:发送请求、加载网页、元素定位、处理 Cookie、无头浏览器设置、页面等待、窗口和 iframe 切换等。通过示例代码帮助读者快速掌握 Selenium 的核心功能。
68 5
|
13天前
|
索引 Python
SciPy 空间数据1
SciPy 通过 `scipy.spatial` 模块处理空间数据,如判断点是否在边界内、计算最近点等。三角测量是通过测量角度来确定目标距离的方法。多边形的三角测量可将其分解为多个三角形,用于计算面积。Delaunay 三角剖分是一种常用方法,可以对一系列点进行三角剖分。示例代码展示了如何使用 `Delaunay()` 函数创建三角形并绘制。
23 0
|
21天前
|
Python
SciPy 教程 之 SciPy 模块列表 16
SciPy教程之SciPy模块列表16 - 单位类型。常量模块包含多种单位,如公制、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例代码展示了力学单位的使用,如牛顿、磅力和千克力等。
17 0
|
22天前
|
JavaScript Python
SciPy 教程 之 SciPy 模块列表 15
SciPy 教程之 SciPy 模块列表 15 - 功率单位。常量模块包含多种单位,如公制、质量、时间等。功率单位中,1 瓦特定义为 1 焦耳/秒,表示每秒转换或耗散的能量速率。示例代码展示了如何使用 `constants` 模块获取马力值(745.6998715822701)。
15 0