Python的faker模块使用

一,安装使用

# 安装
pip install Faker
#pip安装较慢或者超时可用国内镜像安装
#国内镜像可跳转到文章:https://blog.csdn.net/qq_49349528/article/details/126704402?spm=1001.2014.3001.5501
pip install -i https://pypi.doubanio.com/simple/ faker
 
# 使用
from faker import Faker
fake = Faker(["en_US", "zh_CN"])  # 默认en_US,支持中文本地化zh_CN
print(fake.name())
print(fake.name())
print(fake.name())

支持国家语言

# -------------------------  faker支持的国家语言  -----------------
ar_EG  # 阿拉伯语(埃及)
ar_PS  # 阿拉伯语(巴勒斯坦)
ar_SA  # 阿拉伯语(沙特阿拉伯)
bg_BG  # 保加利亚语(保加利亚)
cs_CZ  # 捷克语(捷克)
de_DE  # 德语(德国)
dk_DK  # 丹麦语(丹麦)
el_GR  # 希腊语(希腊)
en_AU  # 英语(澳大利亚)
en_CA  # 英语( 加拿大)
en_GB  # 英语(英国)
en_US  # 英语( 美国)
es_ES  # 西班牙语(西班牙)
es_MX  # 西班牙语- 墨西哥)
et_EE  # 爱沙尼亚语(爱沙尼亚)
fa_IR  # 波斯语(伊朗)
fi_FI  # 芬兰语(芬兰)
fr_FR  # 法语(法国)
hi_IN  # 印地语(印度)
hr_HR  # 克罗地亚语(克罗地亚)
hu_HU  # 匈牙利语(匈牙利)
hy_AM  # 亚美尼亚语(亚美尼亚)
it_IT  # 意大利语( 意大利)
ja_JP  # 日语(日本)
ko_KR  # 朝鲜语(韩国)
ka_GE  # 格鲁吉亚语(格鲁吉亚)
lt_LT  # 立陶宛语(立陶宛)
lv_LV  # 拉脱维亚语(拉脱维亚)
ne_NP  # 尼泊尔语(尼泊尔)
nl_NL  # 德语(荷兰)
no_NO  # 挪威语(挪威)
pl_PL  # 波兰语(波兰)
pt_BR  # 葡萄牙语 (巴西)
pt_PT  # 葡萄牙语(葡萄牙)
ru_RU  # 俄语(俄国)
sl_SI  # 斯诺文尼亚语(斯诺文尼亚)
sv_SE  # 瑞典语(瑞典)
tr_TR  # 土耳其语(土耳其)
uk_UA  # 乌克兰语(乌克兰)
zh_CN  # 简体中文(中国)
zh_TW  # 繁体中文(中国)

二,内置测试数据的使用以及模块类别

1.信息基础类别

# 基础信息类  使用faker.xxxx()
ssn()  # 生成身份证号
bs()  # 随机公司服务名
company()  # 随机公司名(长)
company_prefix()  # 随机公司名(短)
company_suffix()  # 公司性质
credit_card_expire()  # 随机信用卡到期日
credit_card_full()  # 生成完整信用卡信息
credit_card_number()  # 信用卡号
credit_card_provider()  # 信用卡类型
credit_card_security_code()  # 信用卡安全码
job()  # 随机职位
first_name_female()  # 女性名
first_name_male()  # 男性名
last_name_female()  # 女姓
last_name_male()  # 男姓
name()  # 随机生成全名
name_female()  # 男性全名
name_male()  # 女性全名
phone_number()  # 随机生成手机号
phonenumber_prefix()  # 随机生成手机号段

2.网络、邮箱相关

# 网络、邮箱相关类别
domain_name()  # 生成域名
domain_word()  # 域词(即,不包含后缀)
ipv4()  # 随机IP4地址
ipv6()  # 随机IP6地址
mac_address()  # 随机MAC地址
tld()  # 网址域名后缀(.com,.net.cn,等等,不包括.)
uri()  # 随机URI地址
uri_extension()  # 网址文件后缀
uri_page()  # 网址文件(不包含后缀)
uri_path()  # 网址文件路径(不包含文件名)
url()  # 随机URL地址
user_name()  # 随机用户名
image_url()  # 随机URL地址
ascii_company_email()  # 随机ASCII公司邮箱名
ascii_email()  # 随机ASCII邮箱  # 
company_email()  # 公司类邮箱 例:lei76@xiuyingxu.com
email()  # 邮箱
safe_email()  # 安全邮箱

3,浏览器相关类

# 浏览器相关
chrome()  # 随机生成Chrome的浏览器user_agent信息
firefox()  # 随机生成FireFox的浏览器user_agent信息
internet_explorer()  # 随机生成IE的浏览器user_agent信息
opera()  # 随机生成Opera的浏览器user_agent信息
safari()  # 随机生成Safari的浏览器user_agent信息
linux_platform_token()  # 随机Linux信息
user_agent()  # 随机user_agent信息

4,数字加密相关

# 数字、文本、加密相关
numerify()  # 三位随机数字
random_digit()  # 0~9随机数
random_digit_not_null()  # 1~9的随机数
random_int()  # 随机数字,默认0~9999,可以通过设置min,max来设置
random_number()  # 随机数字,参数digits设置生成的数字位数
pyfloat()  # 随机浮点数
left_digits=5 #生成的整数位数, right_digits=2 #生成的小数位数, positive=True #是否只有正数
pyint()  # 随机Int数字(参考random_int()参数)
pydecimal()  # 随机Decimal数字(参考pyfloat参数)
pystr()  # 随机字符串
random_element()  # 随机字母
random_letter()  # 随机字母
paragraph()  # 随机生成一个段落
paragraphs()  # 随机生成多个段落
sentence()  # 随机生成一句话
sentences()  # 随机生成多句话,与段落类似
text()  # 随机生成一篇文章
word()  # 随机生成词语
words()  # 随机生成多个词语,用法与段落,句子,类似
binary()  # 随机生成二进制编码
boolean()  # True/False
language_code()  # 随机生成两位语言编码
locale()  # 随机生成语言/国际 信息
md5()  # 随机生成MD5
null_boolean()  # NULL/True/False
password()  # 随机生成密码,可选参数  # length  # 密码长度;special_chars  # 是否能使用特殊字符;digits  # 是否包含数字;upper_case  # 是否包含大写字母;lower_case  # 是否包含小写字母
sha1()  # 随机SHA1
sha256()  # 随机SHA256
uuid4()  # 随机UUID

5,时间类

# 时间、日期类
date()  # 随机日期
date_between()  # 随机生成指定范围内日期,参数  # start_date,end_date
date_between_dates()  # 随机生成指定范围内日期,用法同上
date_object()  # 随机生产从1970-1-1到指定日期的随机日期。
date_time()  # 随机生成指定时间(1970年1月1日至今)
date_time_ad()  # 生成公元1年到现在的随机时间
date_time_between()  # 用法同dates
future_date()  # 未来日期
future_datetime(start_date="-3y", end_date="-1y")  # 未来时间  自定义年月日格式 年月日 时分秒
month()  # 随机月份
month_name()  # 随机月份(英文)
past_date()  # 随机生成已经过去的日期
past_datetime()  # 随机生成已经过去的时间
time()  # 随机24小时时间
timedelta()  # 随机获取时间差
time_object()  # 随机24小时时间,time对象
time_series()  # 随机TimeSeries对象
timezone()  # 随机时区
unix_time()  # 随机Unix时间
year()  # 随机年份

date_time(tzinfo=None) # 随机日期时间 2001, 3, 18, 17, 57, 44
iso8601(tzinfo=None) # 以iso8601标准输出的日期'1973-11-16T22:58:37'
date_time_this_month(before_now=True, after_now=False, tzinfo=None) # 本月的某个日期 2017, 11, 1, 14, 33, 48
date_time_this_year(before_now=True, after_now=False, tzinfo=None) # 本年的某个日期2017, 3, 2, 13, 55, 31
date_time_this_decade(before_now=True, after_now=False, tzinfo=None) # 本年代内的一个日期
2010, 3, 26, 6, 33, 23
date_time_this_century(before_now=True, after_now=False, tzinfo=None) # 本世纪一个日期
2015, 7, 21, 19, 27, 53
date_time_between(start_date="-30y", end_date="now", tzinfo=None) # 两个时间间的一个随机时间2005, 12, 3, 17, 17, 15

timezone() # 时区'America/Guatemala'
time(pattern="%H:%M:%S") # 时间(可自定义格式)'11:21:52'
am_pm() # 随机上午下午'PM'
month() # 随机月份'02'
month_name() # 随机月份名字'August'
year() # 随机年'1974'
day_of_week() # 随机星期几'Sunday'
day_of_month() # 随机月中某一天'02'
time_delta() # 随机时间延迟13371, 27637
date_object() # 随机日期对象1983, 1, 26
time_object() # 随机时间对象17, 8, 56
unix_time() # 随机unix时间(时间戳)1223246848
date(pattern="%Y-%m-%d") # 随机日期(可自定义格式)'1984-04-20'
date_time_ad(tzinfo=None) # 公元后随机日期341, 9, 11, 8, 6, 9

6,地理位置类

# 地理信息
fake.city_suffix()  # 市,县
fake.country()  # 国家
fake.country_code()  # 国家编码
fake.district()  # 区
fake.geo_coordinate()  # 地理坐标
fake.latitude()  # 地理坐标(纬度)
fake.longitude()  # 地理坐标(经度)
fake.postcode()  # 邮编
fake.province()  # 省份
fake.address()  # 详细地址
fake.street_address()  # 街道地址
fake.street_name()  # 街道名
fake.street_suffix()  # 街、路

7,其他一些组合数据,

# 其他一些组合数据
profile()  # 随机生成档案信息
simple_profile()  # 随机生成简单档案信息
pyiterable()  # 随机可迭代对象
pylist()  # 列表
pyset()  # 集合
pystruct()  # 字符串
pytuple()  # 元组
pydict()  # 字典

8,颜色类

hex_color() # 16进制表示的颜色'#671f6d'
rgb_css_color() # css用的rgb色'rgb(237,74,237)'
rgb_color() # 表示rgb色的字符串'208,102,218'
color_name() # 颜色名字 'Brown'
safe_hex_color() #安全16进制色 '#ee4400'
safe_color_name() # 安全颜色名字 'maroon'

9,银行卡类

credit_card_number(card_type=None) # 卡号'375325478746231'
credit_card_provider(card_type=None) # 卡的提供者'VISA 13 digit'
credit_card_security_code(card_type=None)# 卡的安全密码'450'
credit_card_expire() # 卡的有效期'04/22'
credit_card_full(card_type=None) # 完整卡信息'Maestro\n秀芳 商\n502001016117 04/27\nCVV: 144\n'

更详细的请参见faker的文档地址:Welcome to Faker’s documentation! — Faker 14.2.0 documentation

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值