美文网首页python
py3笔记6:faker模块

py3笔记6:faker模块

作者: _百草_ | 来源:发表于2022-01-07 11:48 被阅读0次

faker伪数据生成器

1. 导入&初始化

# -*- coding:utf-8 -*-
"""
@author:百草Lily
@file:test_faker.py
@time:2022/1/6

# 官网:https://hellopython.readthedocs.io/zh_CN/latest/faker_generate_fake_data.html
# 参考:https://mp.weixin.qq.com/s/4y1oSxcGDpdSbgtuBMXoBA
# 参考2:https://www.cnblogs.com/wangkun122/p/10297521.html
安装:pip install faker
"""
from datetime import datetime
from faker import Faker

# 初始化,设置locale为中文;默认英文
fake = Faker(locale='zh_CN')
#  locale: Optional[Union[str, Sequence[str], Dict[str, Union[int, float]]]] = None, 那种类型的随机数据,英文形式,中文形式……
#  providers: Optional[List[str]] = None,
#  generator: Optional[Generator] = None,
#  includes: Optional[List[str]] = None,
#  use_weighting: bool = True,

print("fake的所有方法:", dir(fake))

2. 日期类随机数据

print("年月日:", fake.date(pattern="%Y-%m-%d"))  # 默认样式:2017-01-02;pattern指定输出样式
print("随机年份:", fake.year())
print("随机月份:", fake.month())  # 样式:06
print("随机几号:", fake.day_of_month())
print("随机星期:", fake.day_of_week())  # 样式:Sunday
print("随机时间:", fake.time())  # 样式:11:18:14
print("过去某一天:", fake.date_between(start_date="-30m", end_date="today"))
print("今天:", fake.date_between_dates())
print("随机日期-时间:", fake.date_time())  # 样式:2020-11-16 05:41:51
print("当前日期时间:", fake.date_time_between_dates())  # 2022-01-06 16:13:55
print("某个区间内随机日期时间:",
      fake.date_time_between_dates(datetime_start=datetime(2000, 12, 10), datetime_end=datetime(2000, 12, 11)))
# datetime: __new__(cls, year, month=None, day=None, hour=0, minute=0, second=0,
#                 microsecond=0, tzinfo=None, *, fold=0):
print("未来的日期:", fake.future_date(end_date="+30d"))  # 2022-01-23
print("未来的日期时间:", fake.future_datetime(end_date='+30y'))  # 2033-06-21 00:37:27
print("过去的日期:", fake.past_date(start_date="-1d"))  # 2022-01-05
print("过去的日期时间:", fake.past_datetime(start_date="-1h"))  # 2022-01-06 15:49:33

3. 随机字符串/数字/加密

print("随机字符串:", fake.pystr())  # oAYMdFJwnpLqaDbouwCU
print("随机小写字母:", fake.random_element())  # a
print("随机大写字母:", fake.random_letter())  # C
print("随机一个段落:", fake.paragraph())  # 社区等级程序一些还是.决定虽然国内类别国际实现是否.
print("随机一句话:", fake.sentence())  # 发生操作等级我们技术你们如果.
print("随机一篇文章:", fake.text())
"""
电脑直接今年主要.系列使用系列中国.
个人以及大学.一下经验完成方式资源.文章之间如何人员时候最后.
标准增加部分历史.
精华国内今年出现.决定网站浏览美国.
相关评论销售女人详细.资源投资支持还有方法.工程等级人员生产资源无法.
广告使用发布深圳的话当然人民.研究有关他们教育的是成功更多.然后以上操作回复销售.游戏电子积分朋友选择位置任何男人.
"""
print("随机一个词语:", fake.word())
print("随机True和False:", fake.boolean())
print("随机md5:", fake.md5())
print("随机密码:", fake.password())
print("随机SHA1:", fake.sha1())
print("随机sha256:", fake.sha256())
print("随机uuid:", fake.uuid4())
print("随机数字3个:", fake.numerify())
print("随机数0-9:", fake.random_digit())
print("随机数1-9:", fake.random_digit_not_null())
print("随机数0-9999:", fake.random_int())
print("指定位数的随机数:", fake.random_number(digits=5))
print("随机小数:", fake.pyfloat())  # 98436235.295579
print("随机int数:", fake.pyint())

4. 人物相关信息随机数据

print("人物名字:", fake.first_name())
print("女性名字:", fake.first_name_female())
print("男性名字:", fake.first_name_male())
print("罗马文名字:", fake.first_romanized_name())
print("人物全名:", fake.name())
print("女性全名:", fake.name_female())
print("男性全名:", fake.name_male())
print("简略个人信息:", fake.simple_profile())
# {'username': 'konglei','name': '陈阳','sex': 'M', 'address': '四川省台北市安次宜都街t座 310142',
#  'mail': 'nameng@hotmail.com', 'birthdate': datetime.date(1913, 10, 5)}
print("详细个人信息:", fake.profile())
# {'job': '生产文员', 'company': '黄石金承传媒有限公司', 'ssn': '320202199410156083', 'residence': '湖南省彬县秀英张路N座 426043',
#  'current_location': (Decimal('-7.0713125'), Decimal('136.063156')), 'blood_group': 'A+',
#  'website': ['http://www.xiacheng.cn/'], 'username': 'pingmo', 'name': '刘磊', 'sex': 'F',
#  'address': '陕西省秀荣县南湖淮安路y座 837014', 'mail': 'kpan@hotmail.com', 'birthdate': datetime.date(1983, 8, 6)}
print("随机生成身份证号:", fake.ssn())  # 440115195310105874
print("随机生成手机号:", fake.phone_number())  # 13304267005
print("随机生成手机号段:", fake.phonenumber_prefix())  # 134
print("随机信用卡信息:", fake.credit_card_full())
# Mastercard
# 平 徐
# 2256546955567754 01/27
# CVV: 324
print("随机信用卡号:", fake.credit_card_number())
print("随机邮箱:", fake.email())

5. 地址信息随机数据

print("完整地址:", fake.address())  # 江苏省浩县和平童路j座 529694
print("街道+地址:", fake.street_address())  # 李路W座
print("街道名:", fake.street_name())  # 关岭路
print("城市名:", fake.city_name())  # 拉萨
print("区名:", fake.district())  # 黄浦
print("省份名:", fake.province())  # 香港特别行政区
print("邮编:", fake.postcode())  # 843278
print("国家:", fake.country())  # 厄立特里亚
print("国家编码:", fake.country_code())  # TJ
print("地理坐标(纬度):", fake.latitude())  # 66.4134745
print("地址坐标(经度):", fake.longitude())  # -105.908193

6. 公司信息随机数据

print("公司名:", fake.company())  # 思优网络有限公司
print("公司名后缀:", fake.company_suffix())  # 网络有限公司
print("公司名前缀:", fake.company_prefix())  # 群英
print("企业邮箱:", fake.company_email())  # uxia@do.cn

7. 网络信息随机数据

print("生成域名:", fake.domain_name())  # guiyingjun.cn
print("生成ipv4:", fake.ipv4())  # 81.198.128.146
print("生成ipv6:", fake.ipv6())  # 171f:d98e:2ed5:d5d:cc5e:9669:4a88:8d57
print("生成MAC地址:", fake.mac_address())  # 3e:76:a8:af:dc:d0
print("生成uri地址:", fake.uri())  # https://88.cn/privacy/
print("生成url地址:", fake.url())  # https://guiyingxiuying.cn/
print("随机用户名:", fake.user_name())  # vsu

8. 用户代理信息随机数据

print("随机安卓代理信息:", fake.android_platform_token())  # Android 1.0
print("随机IOS代理信息:", fake.ios_platform_token())  # iPad; CPU iPad OS 10_3_4 like Mac OS X
print("随机chrome代理信息:", fake.chrome())  # Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.1 (KHTML, like Gecko) Chrome/37.0.825.0 Safari/534.1
print("随机firefox代理信息:", fake.firefox())  # Mozilla/5.0 (Android 3.2.2; Mobile; rv:5.0) Gecko/5.0 Firefox/5.0
print("随机ie代理信息:", fake.internet_explorer())  # Mozilla/5.0 (compatible; MSIE 5.0; Windows NT 5.2; Trident/5.1)
print("随机opera代理信息:", fake.opera())  # Opera/8.35.(X11; Linux i686; id-ID) Presto/2.9.177 Version/12.00
print("随机safari代理信息:", fake.safari())  # Mozilla/5.0 (Macintosh; PPC Mac OS X 10_7_9 rv:3.0; oc-FR) AppleWebKit/531.3.1 (KHTML, like Gecko) Version/5.0.1 Safari/531.3.1
print("随机代理信息:", fake.user_agent())  # Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_11_9; rv:1.9.4.20) Gecko/2014-10-18 08:39:08 Firefox/5.0
print("随机windows代理信息:", fake.windows_platform_token())  # Windows NT 5.01
print("随机mac代理信息:", fake.mac_platform_token())  # Macintosh; PPC Mac OS X 10_12_3

相关文章

网友评论

    本文标题:py3笔记6:faker模块

    本文链接:https://www.haomeiwen.com/subject/rarjcrtx.html