Python-faker的简单使用
前言:
faker是一个开源的python库,安装完成后只需要调用Faker库,就可以帮助我们创建需要的数据。
一、安装
1.执行如下命令安装
pip3 install faker
2.进入File → Settings → Project → Python Interpreter
二、简单使用
from faker import Faker faker_data = Faker(locale='zh_CN')#定义语言 print(faker_data.name_female())# 调用faker方法生产随机姓名
三、运行实例
from faker import Faker fk_data = Faker(locale='zh_CN')
# 模拟姓名
print(fk_data.name_female()) # 模拟身份证号码 18-50岁
print(fk_data.ssn(min_age=18, max_age=50)) # 模拟手机号码
print(fk_data.phone_number()) # 模拟银行卡号
print(fk_data.credit_card_number()) # 模拟IP地址
print(fk_data.ipv4_private()) # 模拟公司名称
print(fk_data.company()) # 模拟城市位置
print(fk_data.city()) # 模拟具体街道
print(fk_data.address()) # 模拟个人配置信息
print(fk_data.profile()) # 模拟邮政编码
print(fk_data.postcode()) # 模拟随机uri地址
print(fk_data.uri())
四、常用库介绍
1.地理信息类
# address():详细地址, 中文环境中使用的是各种地址拼接,具体省份和区县没有联动关系
# city():城市
# country():国家信息
# country_code(representation='alpha-2'):国家编码
# postcode():邮编信息
# street_address():街道地址信息
# street_name():街道名称
# street_suffix():街、路
2.个人基本信息类
# first_name():名
# first_name_female():女性名
# first_name_male():男性名
# last_name():
# name(): 随机姓名全名
# name_female():女性名字
# name_male():男性名字
# prefix():名字称呼,如先生
# prefix_female():女性称呼
# prefix_male():男性称呼
# phone_number():随机手机号码
# profile(fields=None, sex=None):个人配置信息,如工作、公司、身份证号等
# ssn():随机身份证号
# bs():随机公司服务名
# company():公司全称
# company_suffix():公司性质
# job():工作随机职位信息
# credit_card_expire(start='now', end='+10y', date_format='%m/%y'):银行卡到期日期
# credit_card_full(card_type=None):银行卡全称信息
# credit_card_number(card_type=None):银行卡号
# credit_card_provider(card_type=None):信用卡类型
# credit_card_security_code(card_type=None):银行卡安全码
3.网络信息类
# ascii_company_email():随机ASCII公司邮箱名称
# ascii_email():随机ASCII邮箱
# ascii_free_email():免费邮箱
# ascii_safe_email():安全邮箱
# company_email():公司邮箱
# dga(year=None, month=None, day=None, tld=None, length=None):域名
# domain_name(levels=1):
# email(domain=None):邮箱信息
# free_email():
# free_email_domain():邮箱域名
# hostname(levels=1):主机名
# http_method():http的请求方法
# image_url(width=None, height=None):图片url地址
# ipv4(network=False, address_class=None, private=None):ip地址信息
# ipv4_network_class():ip地址分类
# ipv4_private(network=False, address_class=None):私有ip地址
# ipv4_public(network=False, address_class=None):公网ip地址
# ipv6(network=False):ipv6地址信息
# mac_address():pc的mac地址
# port_number(is_system=False, is_user=False, is_dynamic=False):端口号
# safe_domain_name():安全域名信息
# safe_email():
# uri():随机uri地址
# uri_extension():网页文件后缀
# uri_page():网页文件信息
# uri_path(deep=None):网址文件路径
# url(schemes=None):随机url地址
# user_name(): 随机用户名
4.文件信息类
# file_extension(category=None):文件类型
# file_name(category=None, extension=None):随机文件名字
# file_path(depth=1, category=None, extension=None):随机文件路径
# unix_partition(prefix=None):unix分区信息
5.数字类
# pybool():布尔型
# pydecimal(left_digits=None, right_digits=None, positive=False, min_value=None, max_value=None):随机Decimal类型数字
# pydict(nb_elements=10, variable_nb_elements=True, value_types=None, *allowed_types):随机字典类型数字
# pyfloat(left_digits=None, right_digits=None, positive=False, min_value=None, max_value=None):随机浮点类型数字
# pyint(min_value=0, max_value=9999, step=1):随机int类型数字
# pystr(min_chars=None, max_chars=20):随机字符串
# pystr_format(string_format='?#-###{{random_int}}{{random_letter}}',
# letters='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'):随机规定格式的字符串
# random_digit():随机数字
# random_digit_not_null():1
# ~9
# 随机数字
# random_int(min=0, max=9999, step=1):0
# ~999
# 的随机数字
# random_number(digits=None, fix_len=False):
# random_uppercase_letter():随机大写字母
6.个人代理类
# android_platform_token():android版本user_agent信息
# chrome(version_from=13, version_to=63, build_from=800, build_to=899):谷歌版本user_agent信息
# firefox():火狐版本user_agent信息
# internet_explorer():ie版本user_agent信息
# ios_platform_token():ios版本信息
# linux_platform_token():linux版本信息
# linux_processor():linux版本类型
# user_agent():随机user_agent信息
7.随机字符串
# paragraph(nb_sentences=3, variable_nb_sentences=True, ext_word_list=None):随机生成段落
# paragraphs(nb=3, ext_word_list=None):随机生成多个段落
# sentence(nb_words=6, variable_nb_words=True, ext_word_list=None):随机生成一句话
# sentences(nb=3, ext_word_list=None)::随机生成多句话
# text(max_nb_chars=200, ext_word_list=None):随机生成一篇文章
# texts(nb_texts=3, max_nb_chars=200, ext_word_list=None)
# word(ext_word_list=None):随机生成词语
# words(nb=3, ext_word_list=None, unique=False):随机生成多个词语
# password(length=10, special_chars=True, digits=True, upper_case=True, lower_case=True):随机密码
# sha1(raw_output=False):随机sha1密码
8.日期时间
# am_pm():上 / 下午
# century():世纪
# date(pattern='%Y-%m-%d', end_datetime=None):日期
# date_between(start_date='-30y', end_date='today'):日期范围
# date_between_dates(date_start=None, date_end=None):
# date_object(end_datetime=None):随机生成1970 - 1 - 1
# 到指定日期的随机日期
# date_of_birth(tzinfo=None, minimum_age=0, maximum_age=115):生日
# date_this_century(before_today=True, after_today=False):
# date_time(tzinfo=None, end_datetime=None):时间信息
# future_date(end_date='+30d', tzinfo=None):未来的日期
# month():月份
# month_name():月份名称
# past_date(start_date='-30d', tzinfo=None):随机生成已经过去的日期
# past_datetime(start_date='-30d', tzinfo=None):随机生成已经过去的时间信息
# time(pattern='%H:%M:%S', end_datetime=None):时间信息
# time_delta(end_datetime=None):时间差
# year():年份
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():随机 company 名(长)
company_prefix():随机 company 名(短)
company_suffix():company 性质
credit_card_expire():随机信用卡到期日
credit_card_full():生成完整信用卡信息
credit_card_number():信用卡 ID
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 company 邮箱名
ascii_email():随机 ASCII 邮箱:
company_email():company 邮箱
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/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
8.时间信息类
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():未来时间
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()
五、支持的语言
编号 | 代码 | 语言 |
1 | zh_CN | 中文(中国) |
2 | zh_TW | 中文(中国台湾) |
3 | uk_UA | 乌克兰语 |
4 | tr_TR | 土耳其语 |
5 | sv_SE | 瑞典语 |
6 | sl_SI | 斯洛文尼亚语 |
7 | ru_RU | 俄语 |
8 | ro_RO | 罗马尼亚语 |
9 | pt_PT | 葡萄牙语(葡萄牙) |
10 | pt_BR | 葡萄牙语(巴西) |
11 | pl_PL | 波兰语 |
12 | no_NO | 挪威语 |
13 | nl_NL | 荷兰语(荷兰) |
14 | ne_NP | 尼泊尔语 |
15 | lv_LV | 拉脱维亚语 |
15 | lt_LT | 立陶宛语 |
17 | ko_KR | 韩语 |
18 | ka_GE | 格鲁吉亚语(格鲁吉亚) |
19 | ja_JP | 日语 |
20 | it_IT | 意大利语 |
21 | hy_AM | 亚美尼亚语 |
22 | hu_HU | 匈牙利语 |
23 | hr_HR | 克罗地亚语 |
24 | hi_IN | 印地语 |
25 | fr_FR | 法语 |
26 | fi_FI | 芬兰语 |
27 | fa_IR | 波斯语(伊朗) |
28 | et_EE | 爱沙尼亚语 |
29 | es_MX | 西班牙语(墨西哥) |
30 | es_ES | 西班牙语(西班牙) |
31 | el_GR | 希腊语 |
32 | dk_DK | 丹麦语 |
33 | de_DE | 德语 |
34 | cs_CZ | 捷克语 |
35 | bs_BA | 波斯尼亚语 |
36 | bg_BG | 保加利亚语 |
37 | ar_SA | 阿拉伯语(沙特阿拉伯) |
38 | ar_PS | 阿拉伯语(巴勒斯坦) |
39 | ar_EG | 阿拉伯语(埃及) |
40 | en_AU | 英语(澳大利亚) |
41 | en_CA | 英语(加拿大) |
42 | en_GB | 英语(英国) |
43 | en_NZ | 英语(新西兰) |
44 | en_US | 英语(美国) |
Python-faker的简单使用的更多相关文章
- 用Python写一个简单的Web框架
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...
- Python django实现简单的邮件系统发送邮件功能
Python django实现简单的邮件系统发送邮件功能 本文实例讲述了Python django实现简单的邮件系统发送邮件功能. django邮件系统 Django发送邮件官方中文文档 总结如下: ...
- python shutil模块简单介绍
python shutil模块简单介绍 简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作. shutil 模块方法: copy(src, ...
- python之pandas简单介绍及使用(一)
python之pandas简单介绍及使用(一) 一. Pandas简介1.Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据 ...
- python之simplejson,Python版的简单、 快速、 可扩展 JSON 编码器/解码器
python之simplejson,Python版的简单. 快速. 可扩展 JSON 编码器/解码器 simplejson Python版的简单. 快速. 可扩展 JSON 编码器/解码器 编码基本的 ...
- 用Python编写一个简单的Http Server
用Python编写一个简单的Http Server Python内置了支持HTTP协议的模块,我们可以用来开发单机版功能较少的Web服务器.Python支持该功能的实现模块是BaseFTTPServe ...
- Python -- Scrapy 框架简单介绍(Scrapy 安装及项目创建)
Python -- Scrapy 框架简单介绍 最近在学习python 爬虫,先后了解学习urllib.urllib2.requests等,后来发现爬虫也有很多框架,而推荐学习最多就是Scrapy框架 ...
- C#调用Python脚本的简单示例
C#调用Python脚本的简单示例 分类:Python (2311) (0) 举报 收藏 IronPython是一种在 .NET及 Mono上的 Python实现,由微软的 Jim Huguni ...
- python和mongodb简单交互
python和mongodb简单交互 1.安装pymongo: pip3 install pymongo 2.pymongo的简单用法: # /usr/bin/env python3 import p ...
- python和redis简单交互
python和redis简单交互 1.安装redis模块 pip3 install redis 2.redis模块简单使用: # /usr/bin/env python3 import redis c ...
随机推荐
- 深入理解css 笔记(8)
接下来我们讲下响应式设计,最初开发人员通过创建两个网站来解决这个问题.桌面版和移动版,只是假如要兼容越来越多的设备,比如大屏的平板手机,ipad mini.这时候,强制分开的方案带来就比较多的麻烦 ...
- win服务项因各种原因出问题,删除注册表服务项
win7系统,可以cmd–>sc delete 服务名称win10计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 删除相关服务即 ...
- arp 基本功能
地址解析协议(英语:Address Resolution Protocol,缩写:ARP)是一个通过解析网络层地址来找寻数据链路层地址的网络传输协议,它在IPv4中极其重要.ARP最初在1982年的R ...
- java8 stream按某个字段分组,允许分组字段是null
Map<String, List<Dto>> deviceMap = deviceList.stream().collect(Collectors.groupingBy(Dto ...
- 【MSSQL】数据类型的转换
类型转换 https://learn.microsoft.com/zh-cn/sql/t-sql/data-types/data-type-conversion-database-engine?vie ...
- nginx学习之路
nginx反向代理服务器 1.技术选型 nginx主要能实现的功能有负载均衡,反向代理,动静分离.选择nginx主要为了实现反向代理以及负载均衡功能, *为什么要实现反向代理 传统项目直接暴露在外网入 ...
- python内置函数len()
len() len()函数用于返回对象(字符串.元组.列表和字典等)的长度或元素个数 len()函数的语法: len(s) 代码示例 print(len(range(10))) print(len([ ...
- 【建造者设计模式详解】Java/JS/Go/Python/TS不同语言实现
简介 建造者模式(Builder Pattern),也叫生成器模式,属于创建型模式.它使用多个简单的对象一步一步构建成一个复杂的对象.它允许你使用相同的创建代码生成不同类型和形式的对象. 当你希望使用 ...
- SpringBoot使用邮件发送
使用场景: 定时任务报错 消息推送 日志报错提醒 1.导入依赖 <dependency> <groupId>org.springframework.boot</group ...
- 【个人首测】百度文心一言 VS ChatGPT GPT-4
昨天我写了一篇文章GPT-4牛是牛,但这几天先别急,文中我测试了用GPT-4回答ChatGPT 3.5 和 Notion AI的问题,大家期待的图片输入也没有出现. 昨天下午百度发布了文心一言,对标C ...