引言:

  自动化脚本编写时,一般会遇到需要构造数据的情况,比如注册时的基本信息;每次执行脚本都要重新构造数据显然是很费时费力的事情,所以可以用到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. Koa下http代理

    前言 最近做管理后台的重构或者说重做. 至于为什么要重构. 随意的解释: 是原来写的人走了. 客观的解释: 用的人觉得不好用 维护的人员找不到北 再多一点解释: express + ejs的混合编写 ...

  2. CTF-练习平台-Misc之 听首音乐

    十九.听首音乐 用软件audacity打开后发现如下 上面那一行是可以看做摩斯电码,翻译过来是: ..... -... -.-. ----. ..--- ..... -.... ....- ----. ...

  3. 自定义$('#form').serialize() var params = $('#xxx_form').serializeObject();

    //注意:获取之前 $("#id").removeAttr("disabled"); $.fn.serializeObject = function () { ...

  4. m mm等和envsetup.sh

    envsetup.sh简介: Android 完成编译的时候先执行 source build/envsetup.sh.在这个shell 脚本中定义了 help, croot, m, mm, mmm 等 ...

  5. MySQL--查询表统计信息

    ============================================================= 可以用show table status 来查看表的信息,如:show ta ...

  6. 开源泛域名服务xip.io部署试用

    xip.io 是一个很方便的泛域名服务,类似的有一个xip.name 的开源实现 下载 go get github.com/peterhellberg/xip.name 启动 二进制包在GOPATH/ ...

  7. linux挂载SD卡

    (1)通过#fdisk -l命令确认板子上的linux系统是否识别SD卡 MP805M板子插入SD卡后显示 SD30 slot is without WPmmc1: new high speed SD ...

  8. nginx在centos & ubuntu上的安装

    安装Centos 添加当前账号加入sudoers,具备sudo功能 安装编辑器vim Yum install vim Su root Cd cp /etc/sudoers /etc/sudoers[d ...

  9. 重建oracle的em

    重建oracle的em   今天不知道怎么,心血来潮,就把本机从域里退了出去,然后准备把oracle11g的control给处理处理 一开始也没怎么用心,上网随便找了点资料,就照着干了,然后什么都没干 ...

  10. MySqli 执行多条SQL语句

    使用multi_query();  去执行SQL语句,执行多条语句多个SQL语句用“;”分开 一:没有结果集的语句: $sql="insert into products (cid,name ...