python的faker库使用方法总结

安装

faker是用来生成随机数据的,在生成假测试数据,实现自动化测试上应用非常方便

pip install faker

faker中内置的用于生成数据的函数

地理信息类:

city_suffix():市,县
 
country():国家
 
country_code():国家编码
 
district():区
 
geo_coordinate():地理坐标
 
latitude():地理坐标(纬度)
 
longitude():地理坐标(经度)
 
postcode():邮编
 
province():省份 (zh_TW没有此方法)
 
address():详细地址
 
street_address():街道地址
 
street_name():街道名
 
street_suffix():街、路

基础信息类

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():
 
first_name_female():女性名
 
first_name_male():男性名
 
first_romanized_name():罗马名
 
last_name():
 
last_name_female():女姓
 
last_name_male():男姓
 
last_romanized_name():
 
name():随机生成全名
 
name_female():男性全名
 
name_male():女性全名
 
romanized_name():罗马名
 
msisdn():移动台国际用户识别码,即移动用户的ISDN号码
 
phone_number():随机生成手机号
 
phonenumber_prefix():随机生成手机号段

个人账户信息类

ascii_company_email():随机ASCII公司邮箱名
 
ascii_email():随机ASCII邮箱
 
ascii_free_email():
 
ascii_safe_email():
 
company_email():
 
email():
 
free_email():
 
free_email_domain():
 
safe_email():安全邮箱

网络基础信息类

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地址

浏览器信息

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信息

Faker库的基本用法

1.导入Faker类
from faker import Faker
2.创建Faker对象
通过传递国家代码作为参数来指定Faker的语言环境。例如,使用Faker(‘english’)来指定英语环境。如果不传递参数,则默认使用英语环境
3.使用Faker对象生成数据
下面封装了一个类用于生成数据进行调用

import time
from faker import Faker


class Fake:
    """
    封装faker类,进行数据模拟
    """
    fake = Faker(locale='zh_CN')

    @property
    def phone_number(self):
        """
        手机号
        :return:
        """
        return self.fake.phone_number()

    @property
    def email(self):
        """
        邮箱
        :return:
        """
        return self.fake.email()

    @property
    def name(self):
        """
        姓名
        :return:
        """
        return self.fake.name()

    @property
    def address(self):
        """
        住址
        :return:
        """
        return self.fake.address()

    @property
    def company(self):
        """
        公司
        :return:
        """
        return self.fake.company()

    @property
    def job(self):
        """
        工作
        :return:
        """
        return self.fake.job()

    @property
    def text(self, length=200):
        """
        根据长度返回文本
        :return:
        """
        return self.fake.text(max_nb_chars=length)

    @property
    def date_stamp(self, length=9):
        """
        时间戳
        :return:
        """
        return self.fake.unix_time() if length == 9 else self.fake.unix_time()



    @staticmethod
    def date(pattern=1, customize=None) -> str:
        """
        根据日期模式返回不同的时间格式
        :param pattern: 返回的时间格式
        :param customize: 自定义时间格式
        :return:
        """
        if pattern == 1:
            return time.strftime("%y%m%d%H%M%S", time.localtime(time.time()))
        elif pattern == 2:
            return time.strftime("%y%m%d", time.localtime(time.time()))
        elif pattern == 3:
            return time.strftime("%y-%m-%d-%H-%M-%S", time.localtime((time.time())))
        else:
            return time.strftime(customize, time.localtime((time.time()))) if customize else False
  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值