✍58 Faker 造假数据
以前听说过造假数据的库, 但没有上心, 回想前段时间为造假数据还自己花不少时间写脚本, Faker现成的库却不去用, 真是无力吐槽
安装
pip install faker
简易上手
1.制造个人信息示例
from faker import Faker
# 实例对象
fake = Faker(locale='zh_CN') # 中文,默认是英文
name = fake.name() # 名字
id = fake.ssn() # 身份证
com = fake.company_prefix() # 公司(短)
email = fake.email() # email
print(name, id, com, email)
"""
胡岩 330902197406012731 联通时科 qwen@example.org
"""
2.常见语言选择:
- 简体中文:zh_CN
- 繁体中文:zh_TW
- 美国英文:en_US
- 英国英文:en_GB
- 德文:de_DE
- 日文:ja_JP
- 韩文:ko_KR
- 法文:fr_FR
Faker 官网更多选择: https://faker.readthedocs.io/en/master/
常用方法
dir(fake)查看包含的方法
func_list = [i for i in dir(fake) if not i.startswith("_")] # 排除 "_" 开头的方法
print(len(func_list)) # 267 ()
print(func_list) # ...
目前Faker支持267种数据,此外还支持自己进行扩展
1、地理信息类
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( ):街、路
2、基础信息类
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( ):随机生成手机号段
3、计算机基础、Internet信息类
ascii_company_email( ):随机ASCII公司邮箱名ascii_email( ):随机ASCII邮箱:company_email( ):email( ):safe_email( ):安全邮箱
4、网络基础信息类
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地址
5、浏览器信息类
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信息
6、数字类
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参数)
7、文本、加密类
pystr( ):随机字符串random_element( ):随机字母random_letter( ):随机字母paragraph( ):随机生成一个段落paragraphs( ):随机生成多个段落,通过参数nb来控制段落数,返回数组sentence( ):随机生成一句话sentences( ):随机生成多句话,与段落类似text( ):随机生成一篇文章(不要幻想着人工智能了,至今没完全看懂一句话是什么意思)word( ):随机生成词语words( ):随机生成多个词语,用法与段落,句子,类似binary( ):随机生成二进制编码boolean( ):True/Falselanguage_code( ):随机生成两位语言编码locale( ):随机生成语言/国际 信息md5( ):随机生成MD5null_boolean( ):NULL/True/Falsepassword( ):随机生成密码,可选参数:length:密码长度special_chars:是否能使用特殊字符digits:是否包含数字upper_case:是否包含大写字母lower_case:是否包含小写字母
sha1( ):随机SHA1sha256( ):随机SHA256uuid4( ):随机UUID
8、时间信息类
date( ):随机日期date_between( ):随机生成指定范围内日期,参数:start_date,end_datedate_between_dates( ):随机生成指定范围内日期,用法同上date_object( ):随机生产从1970-1-1到指定日期的随机日期date_time( ):随机生成指定时间(1970年1月1日至今)date_time_ad( ):生成公元1年到现在的随机时间date_time_between( ):用法同datesfuture_date( ):未来日期future_datetime( ):未来时间month( ):随机月份month_name( ):随机月份(英文)past_date( ):随机生成已经过去的日期past_datetime( ):随机生成已经过去的时间time( ):随机24小时时间timedelta( ):随机获取时间差time_object( ):随机24小时时间,time对象time_series( ):随机TimeSeries对象timezone( ):随机时区unix_time( ):随机Unix时间year( ):随机年份
9、python 相关方法
profile( ):随机生成档案信息simple_profile( ):随机生成简单档案信息pyiterable( ): 可迭代器pylist( ): 列表pyset( ): 集合pystruct( ): 结构体(类)pytuple( ): 元组pydict( ): 字典
参考 : https://www.cnblogs.com/jinjiangongzuoshi/p/15714915.html

浙公网安备 33010602011771号