faker包

作者: 阿登20 | 来源:发表于2020-08-28 13:21 被阅读0次

    Faker

    github地址https://github.com/joke2k/faker

    官方地址https://faker.readthedocs.io/en/master/

    一、Faker是干什么的?

    Faker是一个Python包,主要用来创建伪数据,使用Faker包,无需再手动生成或者手写随机数来生成数据,只需要调用Faker提供的方法,即可完成数据的生成

    安装

    pip install Faker  安装
    
    查看版本号:faker 4.1.2
    faker --version  
    

    二、使用

    from faker import Faker
    
    
    faker = Faker()
    print(faker.name()) # 随机生成一个英文名字
    print(faker.address())
    
    # 想要造出中文的信息,实例化Faker("zh_CN")
    
    faker = Faker(locale="zh_CN")
    print(faker.name())   # 随机一个字符串的中文名字
    print(faker.address()) # 随机一个字符串的中文地址
    # ssn 随机身份证号码
    print(faker.ssn()) # 654225197703302254
    # 随机手机号
    print(faker.phone_number())
    # 随机手机号段
    print(faker.phonenumber_prefix())
    # 随机出生日期
    print(faker.date_object(end_datetime=None)) # 2003-07-16
    print(faker.date_time()) # 1996-03-02 06:18:31
    print(faker.bban()) # 银行卡号
    print(faker.iban()) # 银行卡号
    print(faker.building_number())
    # 信用卡 卡号
    print(faker.credit_card_number()) # 4010939064933131739
    # user_agent 用户代理
    print(faker.user_agent()) # Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; Trident/5.1)
    print(faker.city_suffix())
    print(faker.country()) # 随机国家
    print(faker.postcode()) # 邮政编码
    print(faker.credit_card_full())
    print(faker.credit_card_number())
    # 随机指定多少位的 条形码
    print(faker.ean(length=13))  # 9150809223580
    
    import json
    b = json.loads(faker.json())
    print(b)
    print(faker.name_female())
    print(faker.name_male())
    # 随机生成Chrome的浏览器user_agent信息
    print(faker.chrome())
    # 随机生成FireFox的浏览器user_agent信息
    print(faker.firefox())
    # 生成一篇文章
    print(faker.text())
    # 生成一个列表 文章
    print(faker.texts())
    #随机md5
    print(faker.md5())
    
    print(faker.safe_email())
    print(faker.email())
    print(faker.ipv4())
    # 个人IP地址
    print(faker.ipv4_private())
    print(faker.url())
    print(faker.word())
    print(faker.password(special_chars=False))
    
    
    
    方法真尼玛太多了,而且还不知道具体方法到底是什么意思。所以在下面我用dir()方法统计几乎99%的方法然后写入到一个文件。看作文意思几乎能知道具体那个方法,具体是干什么用的。
    

    faker所有方法调用:格式faker.方法()

    address--> 宁夏回族自治区西宁县清河佛山街i座 374976
    am_pm--> PM
    android_platform_token--> Android 2.3.4
    ascii_company_email--> luowei@zc.cn
    ascii_email--> ykang@20.cn
    ascii_free_email--> juanyao@gmail.com
    ascii_safe_email--> fang57@example.org
    bank_country--> GB
    bban--> IJYW91302210215922
    boolean--> True
    bothify--> 47 en
    bs--> incentivize end-to-end initiatives
    building_number--> e座
    catch_phrase--> Universal even-keeled framework
    century--> XIII
    chrome--> Mozilla/5.0 (iPad; CPU iPad OS 5_1_1 like Mac OS X) AppleWebKit/534.1 (KHTML, like Gecko) CriOS/28.0.869.0 Mobile/90L529 Safari/534.1
    city--> 深圳市
    city_name--> 贵阳
    city_suffix--> 县
    color--> #9ddcdd
    color_name--> AliceBlue
    company--> 易动力传媒有限公司
    company_email--> qyuan@taoxiuying.cn
    company_prefix--> 九方
    company_suffix--> 科技有限公司
    coordinate--> -85.951452
    country--> 所罗门群岛
    country_calling_code--> +881 0
    country_code--> US
    credit_card_expire--> 09/28
    credit_card_full--> Maestro
    晶 陈
    639084963755 07/25
    CVV: 865
    
    credit_card_number--> 4402948876672649
    credit_card_provider--> Diners Club / Carte Blanche
    credit_card_security_code--> 365
    cryptocurrency--> ('WAVES', 'Waves Platform')
    cryptocurrency_code--> BCH
    cryptocurrency_name--> Feathercoin
    csv--> "康鹏","福建省通辽市大兴沈阳路b座 768258"
    
    "刘琴","湖北省惠州市静安宁德街f座 628291"
    
    "陈霞","黑龙江省晶市静安巢湖街J座 817152"
    
    "周秀云","四川省福州县海港大冶街h座 576012"
    
    "毛娟","四川省佛山市沙市贵阳街V座 326161"
    
    "何淑英","陕西省佛山市大兴西宁路U座 184921"
    
    "袁超","安徽省深圳县朝阳佛山路e座 454899"
    
    "李勇","山西省辛集县大东李街Z座 758911"
    
    "杨婷婷","江西省秀梅市璧山刘路L座 968291"
    
    "李秀荣","天津市秀梅市崇文乌鲁木齐路v座 976955"
    
    
    currency--> ('EGP', 'Egyptian pound')
    currency_code--> CUC
    currency_name--> Colombian peso
    currency_symbol--> ¥
    date--> 1991-01-15
    date_between--> 2010-01-17
    date_between_dates--> 2020-08-26
    date_object--> 2011-04-21
    date_of_birth--> 1934-08-05
    date_this_century--> 2002-10-25
    date_this_decade--> 2020-05-23
    date_this_month--> 2020-08-13
    date_this_year--> 2020-01-08
    date_time--> 1997-04-16 08:04:48
    date_time_ad--> 2017-01-24 18:08:05
    date_time_between--> 1992-11-18 17:32:30
    date_time_between_dates--> 2020-08-26 22:50:05
    date_time_this_century--> 2018-02-16 09:43:33
    date_time_this_decade--> 2020-08-14 21:01:48
    date_time_this_month--> 2020-08-07 21:20:18
    date_time_this_year--> 2020-06-09 12:01:53
    day_of_month--> 06
    day_of_week--> Saturday
    dga--> dlbcvnyomobdtesrerdupkefbdlxwvootvcqabciybbdahveccayxcsw.cn
    district--> 永川
    domain_name--> wei.cn
    domain_word--> yongguiying
    dsv--> "庞莹","内蒙古自治区南宁市江北乌鲁木齐街G座 275774"
    
    "邱云","甘肃省梧州市徐汇陈路t座 884969"
    
    "吴小红","北京市冬梅县花溪刘街J座 742124"
    
    "郑想","内蒙古自治区辛集县南溪张街m座 474212"
    
    "袁桂荣","云南省拉萨县长寿淮安路l座 605538"
    
    "孔晨","江苏省丹县大兴东莞路N座 460449"
    
    "刘柳","广东省邯郸县双滦兰州街C座 713786"
    
    "梁云","甘肃省梧州市城东广州街j座 198519"
    
    "魏萍","云南省石家庄县金平李路q座 356592"
    
    "王涛","江西省亮县静安汪街V座 817513"
    
    
    ean--> 1422750939307
    ean13--> 9223425420890
    ean8--> 19827421
    email--> yong44@hotmail.com
    file_extension--> webm
    file_name--> 专业.bmp
    file_path--> /上海/等级.gif
    firefox--> Mozilla/5.0 (X11; Linux i686; rv:1.9.6.20) Gecko/2014-11-14 06:56:17 Firefox/3.8
    first_name--> 彬
    first_name_female--> 娟
    first_name_male--> 林
    first_name_nonbinary--> 琳
    first_romanized_name--> Yan
    fixed_width--> 杨梅                  1  
    钟彬                  0  
    李志强                 5  
    杨帅                  19 
    巩玉                  19 
    任静                  4  
    杨萍                  12 
    陈阳                  0  
    倪旭                  19 
    林华                  20 
    free_email--> yan46@yahoo.com
    free_email_domain--> hotmail.com
    future_date--> 2020-09-08
    future_datetime--> 2020-09-21 01:22:58
    hex_color--> #7af4b9
    hexify--> c57d
    hostname--> email-39.99.cn
    http_method--> GET
    iban--> GB12VBWR01520508504914
    image_url--> https://dummyimage.com/833x560
    internet_explorer--> Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/3.1)
    ios_platform_token--> iPad; CPU iPad OS 12_4 like Mac OS X
    ipv4--> 162.235.249.68
    ipv4_network_class--> a
    ipv4_private--> 10.24.9.238
    ipv4_public--> 205.227.143.27
    ipv6--> 3032:f025:b1b9:2bcd:f9dc:e1ae:1bdf:41c2
    isbn10--> 1-68523-404-6
    isbn13--> 978-1-254-05837-5
    iso8601--> 1972-01-18T18:24:11
    items--> odict_items([('zh_CN', <faker.generator.Generator object at 0x0000000002721BE0>)])
    job--> 施工开料工
    json--> [{"name": "\u9648\u9896", "residency": "\u56db\u5ddd\u7701\u5229\u53bf\u7267\u91ce\u798f\u5dde\u8857t\u5ea7 380299"}, {"name": "\u8521\u67f3", "residency": "\u5317\u4eac\u5e02\u961c\u65b0\u5e02\u6881\u5e73\u5173\u5cad\u8857u\u5ea7 270808"}, {"name": "\u9ec4\u9896", "residency": "\u5c71\u4e1c\u7701\u957f\u6c99\u53bf\u53cc\u6ee6\u5b8b\u8857y\u5ea7 752868"}, {"name": "\u8521\u5ca9", "residency": "\u6e56\u5357\u7701\u592a\u539f\u53bf\u74a7\u5c71\u80e1\u8defq\u5ea7 710163"}, {"name": "\u5434\u9f99", "residency": "\u5c71\u897f\u7701\u78ca\u53bf\u9ad8\u660e\u5f20\u8857a\u5ea7 622626"}, {"name": "\u8d75\u8f89", "residency": "\u65b0\u7586\u7ef4\u543e\u5c14\u81ea\u6cbb\u533a\u79c0\u4e91\u5e02\u74a7\u5c71\u9999\u6e2f\u8defz\u5ea7 408659"}, {"name": "\u4faf\u6d0b", "residency": "\u5e7f\u4e1c\u7701\u8fbd\u9633\u5e02\u534e\u9f99\u90ed\u8defJ\u5ea7 793165"}, {"name": "\u6768\u840d", "residency": "\u5b89\u5fbd\u7701\u5609\u79be\u5e02\u5357\u6eaa\u798f\u5dde\u8857w\u5ea7 455028"}, {"name": "\u5b59\u5f6c", "residency": "\u53f0\u6e7e\u7701\u68a7\u5dde\u53bf\u623f\u5c71\u6606\u660e\u8defS\u5ea7 746967"}, {"name": "\u5218\u79c0\u82b3", "residency": "\u6e56\u5357\u7701\u957f\u6625\u53bf\u6c38\u5ddd\u652f\u8defy\u5ea7 126840"}]
    language_code--> mn
    language_name--> Faroese
    last_name--> 陈
    last_name_female--> 洪
    last_name_male--> 黄
    last_name_nonbinary--> 汤
    last_romanized_name--> Yuan
    latitude--> 9.0364595
    latlng--> (Decimal('-85.0619285'), Decimal('62.548541'))
    lexify--> vsSs
    license_plate--> ZIR 977
    linux_platform_token--> X11; Linux i686
    linux_processor--> x86_64
    local_latlng--> ('34.63915', '-120.45794', 'Lompoc', 'US', 'America/Los_Angeles')
    locale--> af_ZA
    localized_ean--> 0738270977172
    localized_ean13--> 0205861842923
    localized_ean8--> 07859700
    location_on_land--> ('39.43534', '-84.20299', 'Lebanon', 'US', 'America/New_York')
    longitude--> 114.043478
    mac_address--> c0:32:fe:22:89:12
    mac_platform_token--> Macintosh; U; Intel Mac OS X 10_6_9
    mac_processor--> U; Intel
    md5--> ec7458f129970c6bdc4cb2fbaacb2e75
    mime_type--> model/x3d+xml
    month--> 10
    month_name--> January
    msisdn--> 5100794963208
    name--> 杨兵
    name_female--> 曹凯
    name_male--> 张峰
    name_nonbinary--> 李玉华
    null_boolean--> False
    numerify--> 978
    opera--> Opera/9.35.(Windows NT 4.0; tr-CY) Presto/2.9.162 Version/10.00
    paragraph--> 等级美国不断参加教育产品.的话以上全国当前.其他不断处理有些帮助来源.
    paragraphs--> ['过程全部威望你们不能实现根据.如此日本包括必须.政府来自重要不同生活.', '方法资源一下建设.', '开发城市中国都是.以下注册我们评论.']
    password--> +9o4sTkmS_
    past_date--> 2020-08-08
    past_datetime--> 2020-08-10 04:36:27
    phone_number--> 13598738472
    phonenumber_prefix--> 156
    port_number--> 24084
    postcode--> 490139
    prefix--> 
    prefix_female--> 
    prefix_male--> 
    prefix_nonbinary--> 
    profile--> {'job': '市场助理', 'company': '恒聪百汇信息有限公司', 'ssn': '532324197405044613', 'residence': '河北省文市璧山罗街q座 684002', 'current_location': (Decimal('60.5729585'), Decimal('-101.804077')), 'blood_group': 'AB+', 'website': ['http://www.yongkong.cn/', 'http://chao.cn/', 'http://www.yr.cn/', 'https://xiulanyang.cn/'], 'username': 'mincai', 'name': '陈勇', 'sex': 'M', 'address': '上海市桂英县永川成都路e座 485929', 'mail': 'na27@yahoo.com', 'birthdate': date(1909, 10, 21)}
    province--> 内蒙古自治区
    psv--> "万淑英"|"江西省阜新市锡山林街S座 709133"
    
    "刘磊"|"河南省合肥县清浦王路z座 586547"
    
    "姜超"|"新疆维吾尔自治区萍市锡山沈阳路e座 112875"
    
    "安秀芳"|"甘肃省建华县蓟州郑路m座 575542"
    
    "何建华"|"香港特别行政区红县梁平张街S座 458478"
    
    "杨文"|"福建省齐齐哈尔市房山梁街u座 153231"
    
    "王雪"|"河北省磊市合川大冶路V座 362579"
    
    "唐勇"|"山东省志强县花溪沈阳街I座 340102"
    
    "赖淑珍"|"福建省桂珍县浔阳张街l座 801976"
    
    "傅雷"|"甘肃省东市金平西安路h座 729401"
    
    
    pybool--> False
    pydecimal--> 9758095091310.0
    pydict--> {'继续': 'hfang@tx.cn', '提供': 'taogong@hotmail.com', '来源': 4277, '系统': 4300, '参加': 'ZLlsAFmWMZcPUPDAiThn', '发生': 'bvUAnNkQWWjorWhRLGcS', '一次': 'http://www.qiangzhong.cn/tags/main/', '文件': 0.221184152, '资料': 'SiHfMmLepIQAXHrXRmOn', '网站': 3228, '文章': 4063}
    pyfloat--> 255386600255.417
    pyint--> 4166
    pyiterable--> ['xiulan94@fn.cn', 'juan43@92.org', 3938, 'ntmRqreWLQtpaYxLBpow', 'https://www.im.cn/explore/main/list/post/', 'nFSSNXiOVcwNxTTvkCYS', 'xiewei@gmail.com', Decimal('-668036738598.14'), -15853486.66403, 'https://chao.cn/author/']
    pylist--> ['SmDfuEOJOtMoKABmyEGY', 4738642.3173812, datetime(2009, 1, 24, 17, 49, 9), 'jie18@yuqiao.cn', 8632, 6482, 'lAcsirkWLMBuVhmyEqky']
    pyset--> {1665, Decimal('8769424782286.0'), -3280.91512, 'hqTsqIRHIQJTjIHjIjgO', 'WJNHiijvCmtgkrwLjNSP', Decimal('-5838079.5551'), 'https://www.xiulan.cn/list/post/', 'FtTyMeknXfTaSySZLQVM', 'CXiRRGiECTqaUmIaZbAv'}
    pystr--> ahvtbHeqdRDGVHjVgVBE
    pystr_format--> y6-3411876F
    pystruct--> (['VbScSQcFgSAINeVawapP', 'xAlHaGeTxzbWxprdaNha', 'hMWXWukgvwiVVgDjApHt', 'NrnLFzetcaZFtwdhrxUa', datetime(1984, 4, 25, 4, 3, 42), 'gangye@fan.org', 'uyWxYeGhtbDnelzpCCZR', 6177, Decimal('480830921404444.0'), -20.78], {'不是': 398634966.67723, '有关': 'WmWrLgnEZspeyGzlEhWK', '社会': Decimal('25190648879.0'), '有限': 'UhouPsCZdhDYhgNyeYZY', '在线': 'https://www.14.cn/list/tag/explore/register.jsp', '可是': 'minzhu@guiyingmo.cn', '欢迎': 'GzItKGckUeIEknRiFbOS', '我们': Decimal('-51.37542'), '软件': Decimal('-8787567881827.5'), '下载': 'uwLjeIJslGwureZiYbdp'}, {'人员': {0: datetime(1975, 4, 20, 12, 53, 56), 1: ['dNBhjgkmJzajZckntgQM', 70.48785780103, 'XGrVQnYfOWKqaoGqIBDO'], 2: {0: 'RkRGrYBbmcUBYyolAvTQ', 1: 'jcui@gmail.com', 2: [1576, 5868]}}, '更多': {1: 'GsFlfnxWBwRuxHYijnaH', 2: ['GASMPVfpDXWYGYRUNyNI', 'https://www.yan.cn/category/tag/register/', 1109], 3: {1: 6916, 2: 683942684.436, 3: [-401214.12, datetime(2009, 11, 14, 13, 19, 40)]}}, '那个': {2: 9613, 3: ['http://www.leiwei.net/', 'QsILMznuDhkTQpMAYoeb', -35351.44], 4: {2: 'JjCIvxrJsicFUuXPTUPd', 3: 'LDRpNGwnVYxSZGiJHRZj', 4: [datetime(1993, 5, 31, 6, 6, 13), 'CLjLQcWMeyyltYMAVDXf']}}, '网络': {3: 'EgRWAygitzrYhBfvhxVB', 4: [293, -82.0, 6994], 5: {3: 'http://pinggu.cn/homepage/', 4: 5848, 5: ['lhfsCIvRvNEwCxpfiZJM', 7086]}}, '关系': {4: 'PqbDSgJRprNbdkdAimlG', 5: [34927945.5071532, 'jingli@jing.com', 'min23@yahoo.com'], 6: {4: 'chaotan@gmail.com', 5: 4578, 6: ['http://www.xia.net/tag/posts/app/post/', 'mingkang@tancai.cn']}}, '加入': {5: 'geTpPKRAjHQAgovBATeh', 6: ['uJnuQEYBvrFivVcHGiqY', datetime(1991, 10, 6, 20, 7, 43), 'JrFXGSTyAQUqlAkhclzi'], 7: {5: datetime(1990, 5, 7, 12, 36, 14), 6: 3489, 7: ['https://www.69.cn/', 'yong88@yahoo.com']}}, '主题': {6: 'http://www.guiyingping.cn/register.asp', 7: ['xiuyingxiao@aa.cn', -9.75, 'weizhou@yahoo.com'], 8: {6: 1160, 7: Decimal('7318140.92'), 8: ['IywvCPRYUtpHjOvtHoYI', datetime(2012, 10, 7, 19, 2, 39)]}}, '上海': {7: 'QFIqFkugegJLCujncqvO', 8: ['FbRWSGjbrfCbOuXnoRzS', Decimal('-4464208880.8234'), 'TaSszSAZdVRuCOyNzhmO'], 9: {7: 2330, 8: datetime(2019, 1, 6, 20, 28, 23), 9: ['sTNnmXHTcygRAESBaWzJ', 7785]}}, '时候': {8: 'YCCfPtLQOvZWDYgcNuoz', 9: ['oivJYaQqpKTIkCqXLCnR', 8928, 239303210.17], 10: {8: 'MGcAsAkhRctFBbWYaFQC', 9: 4286, 10: [6700, 'yanhao@57.cn']}}, '根据': {9: datetime(1993, 5, 18, 8, 37, 35), 10: ['ahrqKPfVpnpUxpaSptgH', 3232, -75988457087463.0], 11: {9: Decimal('4284.756709'), 10: 6415, 11: [8631, 'yan69@00.cn']}}})
    pytimezone--> tzfile('Asia/Amman')
    pytuple--> (306173236098.0, 'VeQxvBPIALdLlTKkmELL', 'mGkoEAtkfTSRRxPHktaj', 'MfVzXZuVzMqfxYqbhqNW', 'kgNjVFpXCuwuEnOnNCYO', 'mawei@yan.cn', 'yHtoVxORAqoZYBfyDpkv', 'fJSOlkzPyXquFYBaivOD', 'https://www.fumo.cn/blog/index/', datetime(2001, 11, 29, 7, 24, 8), 3542, 'OpMBFriTcGTNhyGnsDer')
    random_choices--> ['a', 'b']
    random_digit--> 6
    random_digit_not_null--> 2
    random_digit_not_null_or_empty--> 6
    random_digit_or_empty--> 
    random_element--> c
    random_elements--> ['a', 'c', 'a']
    random_int--> 1322
    random_letter--> J
    random_letters--> ['Y', 'c', 'i', 'X', 'u', 'N', 'i', 'o', 'N', 'B', 'N', 't', 'N', 'M', 'l', 'k']
    random_lowercase_letter--> b
    random_number--> 326
    random_sample--> ['a', 'b']
    random_uppercase_letter--> X
    randomize_nb_elements--> 9
    rgb_color--> 101,137,236
    rgb_css_color--> rgb(159,240,128)
    romanized_name--> Juan Feng
    safari--> Mozilla/5.0 (iPod; U; CPU iPhone OS 3_3 like Mac OS X; st-ZA) AppleWebKit/532.16.5 (KHTML, like Gecko) Version/4.0.5 Mobile/8B115 Safari/6532.16.5
    safe_color_name--> silver
    safe_domain_name--> example.com
    safe_email--> dengna@example.org
    safe_hex_color--> #997700
    seed_instance--> None
    sentence--> 我们公司深圳根据女人那么需要.
    sentences--> ['这里积分阅读支持国家提高会员.', '联系管理看到自己经验目前经营出来.', '市场文件觉得一些.']
    sha1--> 393f87dd679c8c03bbc704f64d6711e20ebb73ea
    sha256--> 182ad9cc505e060226cdad30c4402848d6eb26d91ec8bc48a4ab1faf9bbd4408
    simple_profile--> {'username': 'yanhan', 'name': '曹淑兰', 'sex': 'F', 'address': '吉林省郑州市萧山陈街e座 369518', 'mail': 'yangqian@gmail.com', 'birthdate': date(1944, 12, 15)}
    slug--> 
    ssn--> 330825193208182466
    street_address--> 纪路b座
    street_name--> 陈路
    street_suffix--> 街
    suffix--> 
    suffix_female--> 
    suffix_male--> 
    suffix_nonbinary--> 
    swift--> HGQTGB2C
    swift11--> FNQEGB2S77H
    swift8--> CQMAGBVG
    text--> 还有会员任何威望业务系列可以.发展而且知道游戏标准.
    可以对于最新.广告帖子网站专业只要报告.
    来自加入成为其中.阅读结果开始女人比较.包括一起但是历史一下.
    成为没有开发记者.完全不是阅读认为上海.如何规定名称帮助地址企业学校.
    行业结果当然名称经济.最新那些标题我们决定.人员使用留言可能积分进入.
    用户因此希望关系网上一个.因为这些只有政府生产怎么资料一个.的话情况行业部分是否学生有限.
    texts--> ['不是表示科技所以非常我们报告.说明情况成为生产应该.喜欢精华地址处理下载.\n计划那么怎么中文精华同时社区.广告通过帖子作品资料谢谢.感觉东西发生安全.\n方式出来公司决定.进行女人会员不要以下查看更多.技术学习城市继续结果自己主题.\n发展开始类别历史资料有关学习.这个为什世界都是文章经验.\n网上孩子大小具有增加查看主题过程.无法报告全国一定.\n这么制作不要一点一般科技环境.谢谢自己最后以及.', '大小中国联系注册服务人民使用.\n北京如何需要完全得到.表示之后以上.\n认为报告我们情况进入操作.虽然数据这种当前人民全部.活动功能学校发现全国.内容之间情况中心文化这个内容.\n操作最大当然政府设备有限学习.空间这个不要活动看到.企业原因责任出现当然同时能够.\n应该无法不断注册觉得得到人员.一点以及支持学习.\n直接国内游戏经济.这些这个注册一种生产.', '两个女人最新女人美国.比较女人法律这个开始以下之间设备.你们设计业务这些文化原因.\n无法人民成为开始大小发生.文章你的音乐.\n拥有一个中文很多.的话我们你的查看.投资作者您的网络评论经验.计划作为然后拥有留言支持状态能力.\n表示注意因为阅读如果经营一切.技术完成不能国家系列出来.之后市场谢谢项目主要国内虽然.\n信息成功数据同时你们政府知道.\n商品控制手机安全论坛.重要搜索自己之后.']
    time--> 13:52:00
    time_delta--> 0:00:00
    time_object--> 14:59:35
    time_series--> <generator object Provider.time_series at 0x00000000039A43C0>
    timezone--> Europe/Tirane
    tld--> cn
    tsv--> "任春梅"    "浙江省巢湖县朝阳杨街H座 959147"
    
    "姜淑华"   "香港特别行政区上海市沙湾东莞路k座 222934"
    
    "潘桂花"   "湖北省佛山市滨城李街A座 250213"
    
    "朱丽"    "湖南省杭州县城北李街B座 165387"
    
    "林健"    "甘肃省石家庄县花溪王路a座 283346"
    
    "萧丽华"   "天津市海口市沈河西安街Y座 431174"
    
    "侯阳"    "重庆市丽丽县房山陈路b座 280675"
    
    "王宁"    "福建省文市萧山香港街I座 920582"
    
    "王荣"    "云南省丽娟县西夏马路z座 731990"
    
    "钱荣"    "福建省东莞县黄浦石家庄街Q座 263815"
    
    
    unix_device--> /dev/vdr
    unix_partition--> /dev/sdn2
    unix_time--> 628144054
    upc_a--> 696733003021
    upc_e--> 12856620
    uri--> https://www.ganggang.cn/
    uri_extension--> .html
    uri_page--> privacy
    uri_path--> app/explore/wp-content
    url--> http://meng.cn/
    user_agent--> Mozilla/5.0 (Windows; U; Windows 95) AppleWebKit/534.5.6 (KHTML, like Gecko) Version/4.0.5 Safari/534.5.6
    user_name--> juan28
    uuid4--> 27123efa-1a0f-4f6d-9dd9-ec36b254488a
    windows_platform_token--> Windows NT 5.2
    word--> 阅读
    words--> ['就是', '更新', '怎么']
    year--> 1980
    
    

    打印方法列表

    a = ['address', 'am_pm', 'android_platform_token', 'ascii_company_email', 'ascii_email', 'ascii_free_email', 'ascii_safe_email', 'bank_country', 'bban', 'boolean', 'bothify', 'bs', 'building_number', 'cache_pattern', 'catch_phrase', 'century', 'chrome', 'city', 'city_name', 'city_suffix', 'color', 'color_name', 'company', 'company_email', 'company_prefix', 'company_suffix', 'coordinate', 'country', 'country_calling_code', 'country_code', 'credit_card_expire', 'credit_card_full', 'credit_card_number', 'credit_card_provider', 'credit_card_security_code', 'cryptocurrency', 'cryptocurrency_code', 'cryptocurrency_name', 'csv', 'currency', 'currency_code', 'currency_name', 'currency_symbol', 'date', 'date_between', 'date_between_dates', 'date_object', 'date_of_birth', 'date_this_century', 'date_this_decade', 'date_this_month', 'date_this_year', 'date_time', 'date_time_ad', 'date_time_between', 'date_time_between_dates', 'date_time_this_century', 'date_time_this_decade', 'date_time_this_month', 'date_time_this_year', 'day_of_month', 'day_of_week', 'del_arguments', 'dga', 'district', 'domain_name', 'domain_word', 'dsv', 'ean', 'ean13', 'ean8', 'email', 'factories', 'file_extension', 'file_name', 'file_path', 'firefox', 'first_name', 'first_name_female', 'first_name_male', 'first_name_nonbinary', 'first_romanized_name', 'fixed_width', 'format', 'free_email', 'free_email_domain', 'future_date', 'future_datetime', 'generator_attrs', 'get_arguments', 'get_formatter', 'hex_color', 'hexify', 'hostname', 'http_method', 'iban', 'image_url', 'internet_explorer', 'ios_platform_token', 'ipv4', 'ipv4_network_class', 'ipv4_private', 'ipv4_public', 'ipv6', 'isbn10', 'isbn13', 'iso8601', 'items', 'job', 'json', 'language_code', 'language_name', 'last_name', 'last_name_female', 'last_name_male', 'last_name_nonbinary', 'last_romanized_name', 'latitude', 'latlng', 'lexify', 'license_plate', 'linux_platform_token', 'linux_processor', 'local_latlng', 'locale', 'locales', 'localized_ean', 'localized_ean13', 'localized_ean8', 'location_on_land', 'longitude', 'mac_address', 'mac_platform_token', 'mac_processor', 'md5', 'mime_type', 'month', 'month_name', 'msisdn', 'name', 'name_female', 'name_male', 'name_nonbinary', 'null_boolean', 'numerify', 'opera', 'paragraph', 'paragraphs', 'parse', 'password', 'past_date', 'past_datetime', 'phone_number', 'phonenumber_prefix', 'port_number', 'postcode', 'prefix', 'prefix_female', 'prefix_male', 'prefix_nonbinary', 'profile', 'provider', 'providers', 'province', 'psv', 'pybool', 'pydecimal', 'pydict', 'pyfloat', 'pyint', 'pyiterable', 'pylist', 'pyset', 'pystr', 'pystr_format', 'pystruct', 'pytimezone', 'pytuple', 'random', 'random_choices', 'random_digit', 'random_digit_not_null', 'random_digit_not_null_or_empty', 'random_digit_or_empty', 'random_element', 'random_elements', 'random_int', 'random_letter', 'random_letters', 'random_lowercase_letter', 'random_number', 'random_sample', 'random_uppercase_letter', 'randomize_nb_elements', 'rgb_color', 'rgb_css_color', 'romanized_name', 'safari', 'safe_color_name', 'safe_domain_name', 'safe_email', 'safe_hex_color', 'seed', 'seed_instance', 'seed_locale', 'sentence', 'sentences', 'set_arguments', 'set_formatter', 'sha1', 'sha256', 'simple_profile', 'slug', 'ssn', 'street_address', 'street_name', 'street_suffix', 'suffix', 'suffix_female', 'suffix_male', 'suffix_nonbinary', 'swift', 'swift11', 'swift8', 'text', 'texts', 'time', 'time_delta', 'time_object', 'time_series', 'timezone', 'tld', 'tsv', 'unix_device', 'unix_partition', 'unix_time', 'upc_a', 'upc_e', 'uri', 'uri_extension', 'uri_page', 'uri_path', 'url', 'user_agent', 'user_name', 'uuid4', 'weights', 'windows_platform_token', 'word', 'words', 'year']
    # 将方法写入到一个文件,方便以后查看。百度好多都不是faker最新版本的,参考价值大打折扣。
    f = open("faker.txt","wt",encoding="utf-8")
    
    for i in a:
        try:
    
            exec(f"print('{i}-->' ,faker."+f"{i}(),file=f)")
        except Exception as e:
            continue
    
    f.close()
    
    

    三、常用函数

    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():随机生成多个段落
    • 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()

    可以用dir(fake),看Faker库都可以fake哪些数据,目前Faker支持近300种数据,此外还支持自己进行扩展。

    有了这些生成数据函数之后用fake对象就可以调用不同的方法生成各种数据了。

    3.1 常用数据场景

    1、构造通讯录记录

    from faker import Faker
    
    fake = Faker(locale='zh_CN')
    for _ in range(5):
        print('姓名:', fake.name(), ' 手机号:', fake.phone_number())
        
    # 输出信息:
    姓名: 骆柳  手机号: 18674751460
    姓名: 薛利  手机号: 13046558454
    姓名: 翟丽丽  手机号: 15254904803
    姓名: 宋秀珍  手机号: 13347585045
    姓名: 孔桂珍  手机号: 18258911504
    

    2、构造信用卡数据

    from faker import Faker
    
    fake = Faker(locale='zh_CN')
    print('Card Number:', fake.credit_card_number(card_type=None))
    print('Card Provider:', fake.credit_card_provider(card_type=None))
    print('Card Security Code:', fake.credit_card_security_code(card_type=None))
    print('Card Expire:', fake.credit_card_expire())
    
    # 输出信息:
    Card Number: 676181530350
    Card Provider: Diners Club / Carte Blanche
    Card Security Code: 615
    Card Expire: 09/21
    

    3、生成个人档案信息

    from faker import Faker
    
    fake = Faker(locale='zh_CN')
    print(fake.profile())
    
    # 输出信息
    {'job': '美术指导', 'company': '易动力传媒有限公司', 'ssn': '370703197807179500', 'residence': '广西壮族自治区旭县蓟州东莞街L座 784064', 'current_location': (Decimal('78.3608745'), Decimal('-95.946407')), 'blood_group': 'B+', 'website': ['https://www.jiewang.org/', 'https://www.longsong.cn/', 'https://jingyong.net/', 'https://58.cn/'], 'username': 'qinqiang', 'name': '唐伟', 'sex': 'F', 'address': '新疆维吾尔自治区建华市东丽拉萨街a座 875743', 'mail': 'shenyang@hotmail.com', 'birthdate': datetime.date(2014, 4, 27)}
    

    4、生成Python相关结构信息

    from faker import Faker
    
    fake = Faker(locale='zh_CN')
    print('生成Python字典: {}'.format(fake.pydict(
        nb_elements=10, variable_nb_elements=True)))  # Python字典
    print('生成Python可迭代对象:{}.'.format(fake.pyiterable(
        nb_elements=10, variable_nb_elements=True)))   # Python可迭代对象
    print('生成Python结构:{}'.format(fake.pystruct(count=1)))  # Python结构
    
    
    # 输出信息
    成Python字典: {'论坛': 'nVcSbHlrcrhIBtwByVUM', '直接': 'drkyFUNcNxdbwYKhRLEZ', '成功': 'https://fang.cn/main/search/blog/search/', '没有': datetime.datetime(2006, 2, 24, 15, 40, 14), '原因': 404, '作者': 'OTJjsFHQklpUvTPtLCqP'}
    生成Python可迭代对象:{1088, 'ignqbohwYRxqolLEzSti', 'http://gang.cn/main/search.php', 'zRnNYdIpPXUxEVISHbvS', 'ToZxuBetghvlPHUumAvi', 9830, 'OYAjoKeVNGhHMLgnYUAw', 970446.888, -17681479853.4069, 872236250787063.0, datetime.datetime(2017, 12, 24, 5, 58, 58), 'aRSfxiUSuMqHXvKCCkMJ'}
    生成Python结构:(['cKwOvdCEFOhCERMSMXSf'], {'只有': 'hhwGCmjkHMOUjBTDztXp'}, {'还有': {0: 'vjcNqpnRbNUUxXpgVyvh', 1: [8725, 7125, 'aTSJssAJUKpuRLcbiwyK'], 2: {0: 'RmWlFQQpVZIQkxZPfJnq', 1: 'efsUVLgeStXbCOJDuJCf', 2: ['FgZQLCRjUTmEbBdDMEPZ', 'https://min.cn/search/faq/']}}})
    

    四、 自定义Faker数据类型

    如果这些数据还不够生成数据使用,Faker还支持创建自定义的Provider生成数据。

    from faker import Faker
    from faker.providers import BaseProvider
    
    # 创建自定义Provider
    class CustomProvider(BaseProvider):
        def customize_type(self):
            return 'test_Faker_customize_type'
    
    # 添加Provider
    fake = Faker()
    fake.add_provider(CustomProvider)
    print(fake.customize_type())
    

    是不是十分简单,以后常用的数据就可以自己创建Provider用自动化的方法生成了,不仅节省了时间,复用性也变高了。

    参考文章地址

    faker:
    https://zhuanlan.zhihu.com/p/87203290
    https://blog.csdn.net/qq_41703291/article/details/87898556
    
    https://mp.weixin.qq.com/s?__biz=MzA4NDUyNzA0Ng==&mid=2247486145&idx=1&sn=4d309ad345174c63c9855501ae10c883&chksm=9fe49868a893117e917b241df9883c9b2c11374457162d88beba49960ced833a8a89d7ca1784&mpshare=1&scene=1&srcid=0707Uho3BpFNA7wpORVmLl2y&sharer_sharetime=1598445800326&sharer_shareid=a7e895789819ce3b0777e7e2dba37550&key=e0a4d01c3985cc28d44c99e2e1da7f6cf94cde3d944a213ec313d8eb6d6a2504160ccfe261f820eadb8d4ebd2065f8e4582ef6a4e8a4b7a21f28c96e5556b4cc3307e56261805dc8b9f24fb7990a74eb5882b76c28576b481c598b2d3718084e6812ef56b5e502609d25e80545aede16589c61a8174d26a891c7cf284c534aa3&ascene=1&uin=MTIyNzc5NzY1Mg%3D%3D&devicetype=Windows+7+x64&version=62090529&lang=zh_CN&exportkey=A%2BGTpfbc6JxYXZP6vf%2F6V6A%3D&pass_ticket=Cor%2FckmqWbki0zJJ%2F8yTTjU9xjnRRnK6O4hiU56wSAIAgzIRQVpcbmm75R%2Fdn1%2Bu
    
    https://www.cnblogs.com/python666666/p/9980243.html
    

    相关文章

      网友评论

          本文标题:faker包

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