引言:

  自动化脚本编写时,一般会遇到需要构造数据的情况,比如注册时的基本信息;每次执行脚本都要重新构造数据显然是很费时费力的事情,所以可以用到faker模块来构造;方便快捷,神器也;

一、安装

  pip install -U faker

二、基本用法

  1.创建10次不同的用户名:

from faker import Factory

def create_names():
    fake = Factory.create()
    ):
        print fake.name()

if __name__ == '__main__':
    create_names()

  随机产生10个符合命名规则的假数据,因为名字规则是按外国人名涉及的,所以可能会有很多概率出现姓名之外的简称等

>>>
============== RESTART: C:\Users\hao\Desktop\faker_test.py ==============
David MartinMrs. Terese Walter MDJess MayertMs. Katerina Fisher PhDMrs. Senora Purdy PhDGretchen TrompWinnie GoodwinYuridia McGlynn MDMelissa Kent April Washington >>>

  2.生成只有姓和名的数据

from faker import Factory

def create_names():
    fake = Factory.create()
    ):
        print '%s %s' % (fake.last_name(), fake.first_name())

if __name__ == '__main__':
    create_names()

  生成的数据只包含了last_name和first_name

>>>
============== RESTART: C:\Users\lizihao\Desktop\faker_test.py ==============
Gillespie Travis
Gomez Brandon
Wiley Jim
Anderson Amber
Walker Desiree
Miranda Elizabeth
Johnson Samantha
Tanner David
Keller Allison
Sanchez Kaylee
>>> 

  3.还有一些常用的数据,比如用户名、密码、电话、住址、城市等等

from faker import Factory

def create_fake_stuff():
    stuff = ['user_name', 'password', 'email', 'phone_number', 'address', 'city', 'state', 'paragraph']
    fake = Factory.create()
    for item in stuff:
        print '%s = %s' % (item, getattr(fake, item)())

if __name__ == '__main__':
    create_fake_stuff()

  生成的对应的数据:

>>>
============== RESTART: C:\Users\lizihao\Desktop\faker_test.py ==============
user_name = kevin04
password = PN5xUyd5n$
email = rodriguezwilliam@hotmail.com
phone_number = --
address =  Brett Glens
Port Jeffrey, MD
city = Meltonbury
state = Arizona
paragraph = Iure odit voluptatibus quidem iste. Omnis ab ab voluptas consequuntur earum repellendus corrupti.
>>> 

三、其余的用法

  如果想知道faker都能生成哪些规则的数据,可以创建fake对象,然后dir(fake);

>>> from faker import Factory
>>> fake = Factory.create()
>>> dir(fake)
>>> 

  得到的结果是:

  

  需要什么样的数据就在里面找吧,一般都能满足你的需要;

faker模块基本用法的更多相关文章

  1. python模块一之faker模块

    faker模块主要是用来创建伪数据,无需手动生成或者手写随机数来生成数据,可以利用faker完成伪造大量测试数据的工作 一.安装 pip install faker 二.使用 from faker i ...

  2. python-利用faker模块生成测试数据

    Python-利用faker模块生成测试数据 1.前言: Faker模块是一个生成伪数据的第三方模块,他提供了一系列方法,使用非常方便,在做自动化测试时,注册信息,用这个模块生成测试数据就体现了它的好 ...

  3. json模块和pickle模块的用法

    在python中,可以使用pickle和json两个模块对数据进行序列化操作 其中: json可以用于字符串或者字典等与python数据类型之间的序列化与反序列化操作 pickle可以用于python ...

  4. faker模块

    faker模块中有很多函数,可以直接生成手机号,身份证号,姓名等 1.安装faker pip install faker 2.faker的使用 from faker import Faker f=Fa ...

  5. python之模块py_compile用法(将py文件转换为pyc文件)

    # -*- coding: cp936 -*- #python 27 #xiaodeng #python之模块py_compile用法(将py文件转换为pyc文件):二进制文件,是由py文件经过编译后 ...

  6. 百万年薪python之路 -- socket()模块的用法

    socket()模块的用法: import socket socket.socket(socket_family,socket_type,protocal=0) socket_family 可以是 A ...

  7. Python的logging模块基本用法

    Python 的 logging 模块的简单用法 在服务器部署时,往往都是在后台运行.当程序发生特定的错误时,我希望能够在日志中查询.因此这里熟悉以下 logging 模块的用法. logging 模 ...

  8. python学习第四十九天XML模块的用法

    xml是实现不通语言或程序之间进行数据交换的协议,跟json差不多,但是json用起来简单,还没诞生json,以前都是用xml,下面讲述XML模块的用法. 1,导入xml模块 import xml 2 ...

  9. python pickle模块的用法

    pickle用于python特有的类型,和python的数据类型间进行转换,提供四个功能 dumps,dump,loads,load. pickle 的用法 #pickle.dumps 将数据通过特殊 ...

随机推荐

  1. bisect

    # 二分查找算法 import bisect farm = sorted(['haystack', 'needle', 'cow', 'pig']) # ['cow', 'haystack', 'ne ...

  2. MySQL主从数据库配置

    使用工具 MySQL数据版本:5.6.36-log. 两台云服务器(Linux系统) 首先,需要在Linux系统下安装MySQL,具体步骤可以参考这里,并且确保两台主机可以相互访问,可以直接ping一 ...

  3. PHP webservice初探

    背景:在最近的开发中,为了解决公司内部系统与外部系统的对接,开始接触到了webservice接口,外部公司提供接口供我们调用,已达到数据同步的目的,因此有必要普及一下web service的知识了! ...

  4. (4)socket的基础使用(基于TCP协议的并发编程)

    需要实现并发需要依靠socketserver 模块 socketserver模块下有几个功能 def __init__(self, request, client_address, server): ...

  5. frameset的用法

    碰到一个frameset的问题,因为我比较懒,就先从网上拿来一篇基础知识,呵呵,好记性不如烂笔头啊        所谓框架便是网页画面分成几个框窗,同时取得多个 URL.只需要 <FRAMESE ...

  6. ZH奶酪:Python使用ElementTree解析XML【译】

    19.7. xml.etree.ElementTree — The ElementTree XML API 源代码: Lib/xml/etree/ElementTree.py Element类型是一种 ...

  7. Vault 0.10包含了web ui

    Vault 是一个很不错的访问控制,secret api key 管理工具 新的0.10 有好多新的功能的添加,最棒的是有一个web ui 了 包含的新特性如下: K/V Secrets Engine ...

  8. java 搭建新项目,最佳组合:spring boot + mybatis generator

    java 搭建新项目,最佳组合:spring boot + mybatis generator

  9. Spring 相关注解

    spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service 和 @Controller. 在目前的 Sprin ...

  10. 从工程文化和运维理念理解Netflix

    http://www.infoq.com/cn/news/2018/01/netflix-engineering-culture 在技术圈儿,Netflix 是一家非常有特色的互联网公司.他们信奉“自 ...