faker库

faker是python的一个库,用于测试的时候伪造数据

一些常用例子

安装

pip3 install faker

使用

from faker import Faker


fake = Faker(locale='zh_CN')     #实例化,设置中文,有些用法与语言绑定

地址类

fake.country()  # 国家
fake.city()  # 城市
fake.city_suffix()  # 城市的后缀,中文是:市或县
fake.address()  # 地址
fake.street_address()  # 街道
fake.street_name()  # 街道名
fake.postcode()  # 邮编
fake.latitude()  # 维度
fake.longitude()  # 经度

 人物

fake.name() # 姓名
fake.last_name() #
fake.first_name() #
fake.name_male() # 男性姓名
fake.name_female() # 女性姓名

条形码

fake.ean8()  # 8位条码
fake.ean13()  # 13位条码

公司

fake.company() # 公司名
fake.company_suffix() # 公司名后缀

银行卡

fake.credit_card_number(card_type=None) # 卡号
fake.credit_card_provider(card_type=None) # 卡的提供者
fake.credit_card_security_code(card_type=None)# 卡的安全密码
fake.credit_card_expire() # 卡的有效期
fake.credit_card_full(card_type=None) # 完整卡信息

网络

fake.ipv4(network=False)  # ipv4地址
fake.ipv6(network=False)  # ipv6地址
fake.uri() # uri
fake.url() # url
fake.image_url(width=None, height=None)  # 图片url
fake.mac_address() # MAC地址
fake.email() # 邮箱

职位

fake.job()#职位

随机字符

fake.text(max_nb_chars=200) # 随机生成一篇文章
fake.word() # 随机单词
fake.words(nb=3)  # 随机生成几个字
fake.sentence(nb_words=6, variable_nb_words=True)  # 随机生成一个句子
fake.sentences(nb=3) # 随机生成几个句子

手机号

fake.phone_number() # 手机号码
fake.phonenumber_prefix() # 运营商号段,手机号码前三位

ssn

fake.ssn() # 随机生成身份证号(18位)

 

补充内容:

自定义内置数据,代码如下

from faker import Faker
from faker.providers import BaseProvider


class PY36(BaseProvider):
    names = ('张三', '李四', '王五', '赵六')

    def py36_name(self):
        return self.random_element(PY36.names)  #在names中随机取一个值

# 添加provider
fk = Faker(locale='zh_CN')
fk.add_provider(PY36)
print(fk.py36_name())

 

posted @ 2021-02-25 10:50  xifang  阅读(389)  评论(0)    收藏  举报