詳解Python中第三方庫(kù)Faker
項(xiàng)目開發(fā)初期,為了測(cè)試方便,我們總要造不少假數(shù)據(jù)到系統(tǒng)中,盡量模擬真實(shí)環(huán)境。
比如要?jiǎng)?chuàng)建一批用戶名,創(chuàng)建一段文本,電話號(hào)碼,街道地址、IP地址等等。
平時(shí)我們基本是鍵盤一頓亂敲,隨便造個(gè)什么字符串出來,當(dāng)然誰也不認(rèn)識(shí)誰。
現(xiàn)在你不要這樣做了,用Faker就能滿足你的一切需求。
1. 安裝
pip install Faker
2. 簡(jiǎn)單使用
>>> from faker import Faker >>> fake = Faker(locale='zh_CN') >>> fake.name() '李潔' >>> fake.address() '上海市興安盟縣江北東莞路r座 803484'
參數(shù) locale:為生成數(shù)據(jù)的文化選項(xiàng)(語種),默認(rèn)為 en_US,只有使用了相關(guān)文化,才能生成相對(duì)應(yīng)的隨機(jī)信息
常見的文化選項(xiàng):
- zh_CN - Chinese (China Mainland)
- zh_TW - Chinese (China Taiwan)
- en_US - English (United States)
3. 其他方法
3.1 地理信息類
city_suffix():市,縣 country():國(guó)家 country_code():國(guó)家編碼 district():區(qū) geo_coordinate():地理坐標(biāo) latitude():地理坐標(biāo)(緯度) longitude():地理坐標(biāo)(經(jīng)度) postcode():郵編 province():省份 address():詳細(xì)地址 street_address():街道地址 street_name():街道名 street_suffix():街、路
3.2 基礎(chǔ)信息類
ssn():生成身份證號(hào) bs():隨機(jī)公司服務(wù)名 company():隨機(jī)公司名(長(zhǎng)) company_prefix():隨機(jī)公司名(短) company_suffix():公司性質(zhì),如'信息有限公司' credit_card_expire():隨機(jī)信用卡到期日,如'03/30' credit_card_full():生成完整信用卡信息 credit_card_number():信用卡號(hào) credit_card_provider():信用卡類型 credit_card_security_code():信用卡安全碼 job():隨機(jī)職位 first_name_female():女性名 first_name_male():男性名 name():隨機(jī)生成全名 name_female():男性全名 name_male():女性全名 phone_number():隨機(jī)生成手機(jī)號(hào) phonenumber_prefix():隨機(jī)生成手機(jī)號(hào)段,如139
3.3 郵箱信息類
ascii_company_email():隨機(jī)ASCII公司郵箱名 ascii_email():隨機(jī)ASCII郵箱: company_email():公司郵箱 email():普通郵箱 safe_email():安全郵箱
3.4 網(wǎng)絡(luò)基礎(chǔ)信息類
domain_name():生成域名 domain_word():域詞(即,不包含后綴) ipv4():隨機(jī)IP4地址 ipv6():隨機(jī)IP6地址 mac_address():隨機(jī)MAC地址 tld():網(wǎng)址域名后綴(.com,.net.cn,等等,不包括.) uri():隨機(jī)URI地址 uri_extension():網(wǎng)址文件后綴 uri_page():網(wǎng)址文件(不包含后綴) uri_path():網(wǎng)址文件路徑(不包含文件名) url():隨機(jī)URL地址 user_name():隨機(jī)用戶名 image_url():隨機(jī)URL地址
3.5 瀏覽器信息類
chrome():隨機(jī)生成Chrome的瀏覽器user_agent信息 firefox():隨機(jī)生成FireFox的瀏覽器user_agent信息 internet_explorer():隨機(jī)生成IE的瀏覽器user_agent信息 opera():隨機(jī)生成Opera的瀏覽器user_agent信息 safari():隨機(jī)生成Safari的瀏覽器user_agent信息 linux_platform_token():隨機(jī)Linux信息 user_agent():隨機(jī)user_agent信息
3.6 數(shù)字信息
numerify():三位隨機(jī)數(shù)字 random_digit():0~9隨機(jī)數(shù) random_digit_not_null():1~9的隨機(jī)數(shù) random_int():隨機(jī)數(shù)字,默認(rèn)0~9999,可以通過設(shè)置min,max來設(shè)置 random_number():隨機(jī)數(shù)字,參數(shù)digits設(shè)置生成的數(shù)字位數(shù) pyfloat():隨機(jī)Float數(shù)字 pyint():隨機(jī)Int數(shù)字(參考random_int()參數(shù)) pydecimal():隨機(jī)Decimal數(shù)字(參考pyfloat參數(shù))
3.7 文本加密類
pystr():隨機(jī)字符串 random_element():隨機(jī)字母 random_letter():隨機(jī)字母 paragraph():隨機(jī)生成一個(gè)段落 paragraphs():隨機(jī)生成多個(gè)段落 sentence():隨機(jī)生成一句話 sentences():隨機(jī)生成多句話,與段落類似 text():隨機(jī)生成一篇文章 word():隨機(jī)生成詞語 words():隨機(jī)生成多個(gè)詞語,用法與段落,句子,類似 binary():隨機(jī)生成二進(jìn)制編碼 boolean():True/False language_code():隨機(jī)生成兩位語言編碼 locale():隨機(jī)生成語言/國(guó)際 信息 md5():隨機(jī)生成MD5 null_boolean():NULL/True/False password():隨機(jī)生成密碼,可選參數(shù):length:密碼長(zhǎng)度;special_chars:是否能使用特殊字符;digits:是否包含數(shù)字;upper_case:是否包含大寫字母;lower_case:是否包含小寫字母 sha1():隨機(jī)SHA1 sha256():隨機(jī)SHA256 uuid4():隨機(jī)UUID
3.8 時(shí)間信息類
date():隨機(jī)日期 date_between():隨機(jī)生成指定范圍內(nèi)日期,參數(shù):start_date,end_date date_between_dates():隨機(jī)生成指定范圍內(nèi)日期,用法同上 date_object():隨機(jī)生產(chǎn)從1970-1-1到指定日期的隨機(jī)日期。 date_time():隨機(jī)生成指定時(shí)間(1970年1月1日至今) date_time_ad():生成公元1年到現(xiàn)在的隨機(jī)時(shí)間 date_time_between():用法同dates future_date():未來日期 future_datetime():未來時(shí)間 month():隨機(jī)月份 month_name():隨機(jī)月份(英文) past_date():隨機(jī)生成已經(jīng)過去的日期 past_datetime():隨機(jī)生成已經(jīng)過去的時(shí)間 time():隨機(jī)24小時(shí)時(shí)間 timedelta():隨機(jī)獲取時(shí)間差 time_object():隨機(jī)24小時(shí)時(shí)間,time對(duì)象 time_series():隨機(jī)TimeSeries對(duì)象 timezone():隨機(jī)時(shí)區(qū) unix_time():隨機(jī)Unix時(shí)間 year():隨機(jī)年份
4. 實(shí)戰(zhàn)使用
import pymysql
from faker import Faker
conn = pymysql.connect(host="114.215.129.166", port=3306, user="nice", password="", db="flask201",
charset="utf8")
cursor = conn.cursor()
sql1 = """drop table if exists faker_user"""
sql2 = """
create table faker_user(
pid int primary key auto_increment,
username varchar(20),
password varchar(20),
address varchar(35)
)
"""
cursor.execute(sql1)
cursor.execute(sql2)
fake = Faker("zh-CN")
for i in range(20):
sql = """insert into faker_user(username,password,address)
values('%s','%s','%s')""" % (fake.name(), fake.password(special_chars=False), fake.address())
cursor.execute(sql)
conn.commit()
cursor.close()
conn.close()
到此這篇關(guān)于詳解Python中第三方庫(kù)Faker的文章就介紹到這了,更多相關(guān)Python第三方庫(kù)Faker內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
一篇文章帶你了解python標(biāo)準(zhǔn)庫(kù)--random模塊
這篇文章主要給大家介紹了關(guān)于Python中random模塊常用方法的使用教程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-08-08
Python word文本自動(dòng)化操作實(shí)現(xiàn)方法解析
這篇文章主要介紹了Python word文本自動(dòng)化操作實(shí)現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
flask + pymysql操作Mysql數(shù)據(jù)庫(kù)的實(shí)例
下面小編就為大家?guī)硪黄猣lask + pymysql操作Mysql數(shù)據(jù)庫(kù)的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11
python PyQt5 爬蟲實(shí)現(xiàn)代碼
這篇文章主要介紹了python PyQt5 爬蟲實(shí)現(xiàn)代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
Windows系統(tǒng)下實(shí)現(xiàn)pycharm運(yùn)行.sh文件(本地運(yùn)行和打開服務(wù)器終端)
PyCharm是Python開發(fā)的高效率IDE,但是很多時(shí)候需要同時(shí)開發(fā)Bash(shell)腳本,下面這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下實(shí)現(xiàn)pycharm運(yùn)行.sh文件(本地運(yùn)行和打開服務(wù)器終端)的相關(guān)資料,需要的朋友可以參考下2022-09-09
Flask框架學(xué)習(xí)筆記之路由和反向路由詳解【圖文與實(shí)例】
這篇文章主要介紹了Flask框架學(xué)習(xí)筆記之路由和反向路由,結(jié)合圖文與實(shí)例形式詳細(xì)分析了flask框架中路由與反向路由相關(guān)概念、原理、用法與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-08-08
使用Matplotlib 繪制精美的數(shù)學(xué)圖形例子
今天小編就為大家分享一篇使用Matplotlib 繪制精美的數(shù)學(xué)圖形例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12
Python十類常見異常類型總結(jié)(附捕獲及異常處理方式)
在編寫程序時(shí)難免會(huì)遇到錯(cuò)誤,有的是編寫人員疏忽造成的語法錯(cuò)誤,有的是程序內(nèi)部隱含邏輯問題造成的數(shù)據(jù)錯(cuò)誤等等,這篇文章主要給大家介紹了關(guān)于Python十類常見異常類型總結(jié)的相關(guān)資料,文中還附捕獲及異常處理方式,需要的朋友可以參考下2023-06-06

