(编辑:jimmy 日期: 2024/11/12 浏览:2)
本文实例讲述了Python 随机生成测试数据的模块:faker基本使用方法。分享给大家供大家参考,具体如下:
首发日期:2018-06-15
官方文档:https://faker.readthedocs.io/en/master/index.html
pip3 install Faker
【使用faker也能识别成功,不过新版已经更新为Faker】
from faker import Faker
【主要使用的是Factory类,而导入Faker,会同时导入Factory】
3.使用步骤:
fake=Faker()
from faker import Faker # fake=Faker() #默认生成美国英文数据 fake=Faker(locale='zh_CN') # 地址类 print("地址类".center(20,"-")) print(fake.address())#海南省成市丰都深圳路p座 425541 print(fake.street_address())#深圳街X座 print(fake.street_name())#长沙路 print(fake.city_name(),fake.city())#兰州 贵阳市 (相差“市”) print(fake.province())#陕西省 #公司类: print("公司类".center(20,"-")) print(fake.company())#惠派国际公司信息有限公司 print(fake.company_suffix())#网络有限公司 print(fake.company_prefix())#鑫博腾飞 #个人信息类 print("个人信息类".center(20,"-")) print(fake.name())#东浩 print(fake.simple_profile()) #{'username': 'leihan', 'name': '武帅', 'sex': 'F', 'address': '吉林省淮安市双滦家街C座 210434', 'mail': 'lishao@hotmail.com', 'birthdate': '1988-11-12'} print(fake.user_name(),fake.password(special_chars=False))#ajiang zI2QbHy02p #文章类 print("文章类".center(20,"-")) print(fake.word())#当前 print(fake.words(3))#['欢迎', '支持', '图片'] print(fake.sentence(3))#精华有关一些. print(fake.paragraph())#大家电话空间一起操作图片要求.上海发展到了之间用户也是的人.必须记者关系介绍注册.用户时候投资发布.
https://faker.readthedocs.io/en/master/locales/zh_CN.html 由于主要使用中文数据,所以提供常见的方法示例是中文的。想要了解其他的,可以在官网点击其他语言,参考示例结果,不过方法大体上都是相同的。
fake.company_email():企业邮箱
fake.email():邮箱
fake.name():姓名
fake.user_name(*args, **kwargs):用户名,只是随机的英文姓名组合,一般是6位
fake.phone_number():电话号码
fake.simple_profile(sex=None):简略个人信息,包括用户名,姓名,性别,地址,邮箱,出生日期。比如{'username': 'chao', 'name': '胡秀兰', 'sex': 'M', 'address': '宁夏回族自治区玉市沙湾宁德路t座 873713', 'mail': 'uxiao@yahoo.com', 'birthdate': '1998-06-12'}
fake.profile(fields=None, sex=None):详略个人信息,比简略个人信息多出公司名、血型、工作、位置、域名等等信息。
想了解Faker的更多用法,可以参考官方文档:https://faker.readthedocs.io/en/master/index.html
注意:这里为了例子简便,对于数据库操作就直接使用“命令式”的了,而不使用ORM模型式的了。
import pymysql from faker import Faker conn=pymysql.connect(host="localhost",port=3306,user="root",password="123456",db="it",charset="utf8") cursor=conn.cursor() #这里给出表结构,如果使用已存在的表,可以不创建表。 sql=""" create table user( id int PRIMARY KEY auto_increment, username VARCHAR(20), password VARCHAR(20), address VARCHAR(35) ) """ cursor.execute(sql) fake=Faker("zh-CN") for i in range(20): sql="""insert into user(username,password,address) values('%s','%s','%s')""" %(fake.user_name(),fake.password(special_chars=False),fake.address()) cursor.execute(sql) conn.commit() cursor.close() conn.close()
PS:这里再提供几款相关工具供大家参考使用:
在线随机生成个人信息数据工具:
http://tools.jb51.net/aideddesign/rnd_userinfo
在线随机字符/随机密码生成工具:
http://tools.jb51.net/aideddesign/rnd_password
在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。