安装Faker
使用pip安装
pip install Faker
或者去Faker的PyPI页面下载Wheel或者Source文件进行安装:
基本用法
from faker import Faker # 1 fake = Faker() # 2 fake.name() # 3 # Donna Kelly fake.address() # 4 # 519 Donna River # Port Natalie, SD 87384
1. 从faker模块导入Faker这个类。
2. 实例化,保存到变量fake中。
3. 调用name()方法随机生成一个名字。
4. 调用address()方法随机生成地址信息。
如果要生成中文的随机数据,我们可以在实例化时给locale参数传入‘zh_CN’这个值:
from faker import Faker
fake = Faker(locale='zh_CN') fake.name() # 庞超 fake.address() # 河北省辛集县合川张街p座 489476
如果要生成中文繁体字,则可以传入中国台湾这个地区的值'zh_TW'(当然地址显示的是台湾的):
from faker import Faker
fake = Faker(locale='zh_TW') fake.name() # 羅婉婷 fake.address() # 16934 大里縣水源巷35號之0
如果要生成其他语种或地区的数据,我们可以传入相应的地区值:
ar_EG - Arabic (Egypt) ar_PS - Arabic (Palestine) ar_SA - Arabic (Saudi Arabia) bg_BG - Bulgarian bs_BA - Bosnian cs_CZ - Czech de_DE - German dk_DK - Danish el_GR - Greek en_AU - English (Australia) en_CA - English (Canada) en_GB - English (Great Britain) en_NZ - English (New Zealand) en_US - English (United States) es_ES - Spanish (Spain) es_MX - Spanish (Mexico) et_EE - Estonian fa_IR - Persian (Iran) fi_FI - Finnish fr_FR - French hi_IN - Hindi hr_HR - Croatian hu_HU - Hungarian hy_AM - Armenian it_IT - Italian ja_JP - Japanese ka_GE - Georgian (Georgia) ko_KR - Korean lt_LT - Lithuanian lv_LV - Latvian ne_NP - Nepali nl_NL - Dutch (Netherlands) no_NO - Norwegian pl_PL - Polish pt_BR - Portuguese (Brazil) pt_PT - Portuguese (Portugal) ro_RO - Romanian ru_RU - Russian sl_SI - Slovene sv_SE - Swedish tr_TR - Turkish uk_UA - Ukrainian zh_CN - Chinese (China Mainland) zh_TW - Chinese (China Taiwan)
其他方法
注:个别方法具有针对性,比如province()方法适用中国,但不适用美国及其他一些国家。
地址相关
fake.address() # 地址 # '香港特别行政区大冶县上街钟街k座 664713' fake.building_number() # 楼名 # 'v座' fake.city() # 完整城市名 # '长春县' fake.city_name() # 城市名字(不带市县) # '梧州' fake.city_suffix() # 城市后缀名 # '市' fake.country() # 国家名称 # '厄立特里亚' fake.country_code(representation="alpha-2") # 'BZ' # 国家编号 fake.district() # 地区 # '沙湾' fake.postcode() # 邮编 # '332991' fake.province() # 省 # '河北省' fake.street_address() # 街道地址 # '武汉街D座' fake.street_name() # 街道名称 # '广州路' fake.street_suffix() # 街道后缀名 # '路'
汽车相关
fake.license_plate() # 牌照 # 'ZCO 000'
银行相关
fake.bank_country() # 银行所属国家 # 'GB' fake.bban() # 基本银行账号 # 'TPET9323218579379' fake.iban() # 国际银行代码 # 'GB82IRVM1531009974701'
条形码相关
fake.ean(length=13) # EAN条形码 # '5456457843465' fake.ean13() # EAN13条形码 # '2689789887590' fake.ean8() # EAN8条形码 # '52227936'
颜色相关
fake.color_name() # 颜色名称 # 'Orange' fake.hex_color() # 颜色十六进制值 # '#a5cb7c' fake.rgb_color() # 颜色RGB值 # '15,245,42' fake.rgb_css_color() # CSS颜色值 # 'rgb(15,70,13)' fake.safe_color_name() # 安全色 # 'aqua' fake.safe_hex_color() # 安全色十六进制值 # '#881100'
公司相关
fake.bs() # 商业用词 # 'synthesize strategic vortals' fake.catch_phrase() # 妙句(口号) # 'Robust even-keeled service-desk' fake.company() # 公司名称 # '富罳科技有限公司' fake.company_prefix() # 公司名称前缀 # '商软冠联' fake.company_suffix() # 公司名称后缀 # '网络有限公司'
信用卡相关
fake.credit_card_expire(start="now", end="+10y", date_format="%m/%y") # 过期年月 # '11/20' fake.credit_card_full(card_type=None) # 完整信用卡信息 # 'VISA 16 digit\n秀珍 卢\n4653084445257690 11/19\nCVC: 935\n' fake.credit_card_number(card_type=None) # 信用卡卡号 # '4339481813664365360' fake.credit_card_provider(card_type=None) # 信用卡提供商 # 'VISA 19 digit' fake.credit_card_security_code(card_type=None) # 信用卡安全码 # '597'
货币相关
fake.cryptocurrency() # 加密货币代码+名称 # ('TRX', 'TRON') fake.cryptocurrency_code() # 加密货币代码 # 'MZC' fake.cryptocurrency_name() # 加密货币名称 # 'Ripple' fake.currency() # 货币代码+名称 # ('GNF', 'Guinean franc') fake.currency_code() # 货币代码 # 'SOS' fake.currency_name() # 货币名称 # 'Lebanese pound'
时间相关
fake.am_pm() # AM或PM # 'PM' fake.century() # 世纪 # 'XII' fake.date(pattern="%Y-%m-%d", end_datetime=None) # 日期字符串(可设置格式和最大日期) # '1998-05-13' fake.date_between(start_date="-30y", end_date="today") # 日期(可设置限定范围) # datetime.date(2014, 8, 17) fake.date_between_dates(date_start=None, date_end=None) # 同上 # datetime.date(2019, 10, 14) fake.date_object(end_datetime=None) # 日期(可设置最大日期) # datetime.date(1981, 12, 20) fake.date_of_birth(tzinfo=None, minimum_age=0, maximum_age=115) # 出生日期 # datetime.date(1931, 12, 8) fake.date_this_century(before_today=True, after_today=False) # 本世纪日期 # datetime.date(2003, 5, 4) fake.date_this_decade(before_today=True, after_today=False) # 本年代中的日期 # datetime.date(2014, 1, 29) fake.date_this_month(before_today=True, after_today=False) # 本月中的日期 # datetime.date(2019, 10, 10) fake.date_this_year(before_today=True, after_today=False) # 本年中的日期 # datetime.date(2019, 3, 6) fake.date_time(tzinfo=None, end_datetime=None) # 日期和时间 # datetime.datetime(1990, 8, 11, 22, 25) fake.date_time_ad(tzinfo=None, end_datetime=None, start_datetime=None) # 日期和时间(从001年1月1日到现在) # datetime.datetime(244, 12, 17, 9, 59, 56) fake.date_time_between(start_date="-30y", end_date="now", tzinfo=None) # 日期时间(可设置限定范围) # datetime.datetime(1995, 4, 19, 17, 23, 51) fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None) # 同上 # datetime.datetime(2019, 10, 14, 14, 15, 36) fake.date_time_this_century(before_now=True, after_now=False, tzinfo=None) # 本世纪中的日期和时间 # datetime.datetime(2009, 8, 26, 18, 27, 9) fake.date_time_this_decade(before_now=True, after_now=False, tzinfo=None) # 本年代中的日期和时间 # datetime.datetime(2019, 2, 24, 22, 18, 44) fake.