您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關怎么在python中使用faker庫批量生成假數據,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
faker使用起來非常簡單,我們看一下就知道了。
from faker import Faker # 導入Faker這個類, 實例化即可 fake = Faker(locale="zh_CN") # 然后調用里面的方法即可生成相應的假數據 print(fake.name()) # 謝秀華 print(fake.address()) # 四川省莉縣白云沈陽路o座 313522
看起來還挺逼真的,但是有一點需要注意,這里的地址并不是真實的地址,而是隨機組合出來的,也就是將省、市、道路之類的隨機組合在一起。
另外我們在實例化Faker這個類的時候,指定了locale="zh_CN",表示生成中文數據,因為默認是英文數據。faker可以生成多個語言的假數據,支持的語言如下:
簡體中文:zh_CN
繁體中文:zh_TW
美國英文:en_US
英國英文:en_GB
德文:de_DE
日文:ja_JP
韓文:ko_KR
法文:fr_FR
我們舉個栗子:
from faker import Faker fake = Faker(locale="ja_JP") # 指定為日本 print(fake.name()) # 渚 あすか print(fake.address()) # 栃木県西多摩郡奧多摩町花川戸41丁目7番10號 コート中宮祠994 # 指定為臺灣 fake = Faker(locale="zh_TW") print(fake.name()) # 趙美琪 print(fake.address()) # 23149 新營頂福州巷3段653號3樓
除了上面的name和address,faker還支持生成很多其它的數據。
from faker import Faker fake = Faker(locale="zh_CN") # 1. 隨機打印一個國家, 此時跟Faker里面locale無關 print(fake.country()) # 吉布提 # 2. 國家編碼, 此時跟Faker里面locale無關 print(fake.country_code()) # KW # 3. 打印區, 此時是中國的區 print(fake.district()) # 朝陽 # 4. 打印緯度 print(fake.latitude()) # -39.076213 # 5. 打印經度 print(fake.longitude()) # 138.988316 # 6. 打印郵編 print(fake.postcode()) # 881534 # 7. 打印省份 print(fake.province()) # 新疆維吾爾自治區 # 8. 打印詳細地址 print(fake.address()) # 河北省淑英縣豐都永安街D座 260864 # 9. 打印街道地址 print(fake.street_address()) # 姜街c座 # 10. 打印街道名 print(fake.street_name()) # 海門街 # 11. 獲取市、縣 (打印的是后綴, 要么是縣、要么是市) print(fake.city_suffix()) # 市 print(fake.city_suffix()) # 縣 # 12. 打印街、路(打印的是后綴, 要么是路、要么是街) print(fake.street_suffix()) # 路 print(fake.street_suffix()) # 街
from faker import Faker fake = Faker(locale="zh_CN") # 1. 生成身份證號 print(fake.ssn()) # 513428197105280989 # 2. 生成公司服務名 print(fake.country_code()) # HT # 3. 隨機公司名(長) print(fake.company()) # 創聯世紀科技有限公司 # 4. 隨機公司名(短) print(fake.company_prefix()) # 信誠致遠 # 5. 公司性質 print(fake.company_suffix()) # 信息有限公司 # 6. 隨機信用卡到期日 print(fake.credit_card_expire()) # 03/28 # 7. 生成完整信用卡信息 print(fake.credit_card_full()) """ xx JCB 16 digit 勇 趙 3505427828999283 12/22 CVC: 463 """ # 8. 信用卡號 print(fake.credit_card_number()) # 44980244740048 # 9. 信用卡類型 print(fake.credit_card_provider()) # Mastercard # 10. 信用卡安全碼 print(fake.credit_card_security_code()) # 581 # 11. 隨機職位 print(fake.job()) # 新媒體運營 # 12. 女性的名 print(fake.first_name_female()) # 麗娟 # 13. 男性的名 print(fake.first_name_male()) # 彬 # 14. 女性的姓和男性的姓, 這里的姓和上面的名組合起來得到一個完整的姓名 # 說實話個人覺得last_name_female打印姓有點別扭, 可能老外習慣將姓寫在后、名字也在前 # 另外,關于姓,個人覺得其實男女沒有太大區別 print(fake.last_name_female()) # 高 print(fake.last_name_male()) # 楊 # 15. 打印全名 print(fake.name()) # 田小紅 # 16. 男性全名 print(fake.name_male()) # 朱燕 # 17. 女性全名 print(fake.name_female()) # 王凱 # 18. 隨機生成手機號 print(fake.phone_number()) # 18035736881 # 19. 隨機生成手機號段 print(fake.phonenumber_prefix()) # 147
from faker import Faker fake = Faker(locale="zh_CN") # 1. 隨機ASCII公司郵箱名 print(fake.ascii_company_email()) # minghan@jy.org # 2. 隨機ASCII郵箱 print(fake.ascii_email()) # gang38@yongcui.cn # 3. 公司郵箱 print(fake.company_email()) # xiuyinggao@guoxia.org # 4. 郵箱 print(fake.email()) # yang28@hotmail.com # 5. 安全郵箱 print(fake.safe_email()) # jieqiao@example.com
from faker import Faker fake = Faker(locale="zh_CN") # 1. 生成域名 print(fake.domain_name()) # lijuan.net # 2. 域詞(即,不包含后綴) print(fake.domain_word()) # weiyang # 3. 隨機IP4地址 print(fake.ipv4()) # 12.16.224.95 # 4. 隨機IP6地址 print(fake.ipv6()) # e6b:5814:4d63:1496:9e0d:eb44:e114:722b # 5. 隨機MAC地址 print(fake.mac_address()) # 8a:1c:ce:eb:f0:5c # 6. 網址域名后綴(com, net, cn等等,不包括.) print(fake.tld()) # cn # 7. 隨機URI地址 print(fake.uri()) # https://na.cn/login/ # 8. 網址文件后綴 print(fake.uri_extension()) # .htm # 9. 網址文件(不包含后綴) print(fake.uri_page()) # homepage # 10. 網址文件路徑(不包含文件名) print(fake.uri_path()) # categories # 11. 隨機URL地址 print(fake.url()) # https://jingsong.cn/ # 12. 隨機用戶名 print(fake.user_name()) # jing13 # 13. 隨機URL地址 print(fake.image_url()) # https://dummyimage.com/109x622
from faker import Faker fake = Faker(locale="zh_CN") # 1. 隨機生成Chrome的瀏覽器user_agent信息 print(fake.chrome()) # Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_7) AppleWebKit/535.0 (KHTML, like Gecko) Chrome/26.0.870.0 Safari/535.0 # 2. 隨機生成FireFox的瀏覽器user_agent信息 print(fake.firefox()) # Mozilla/5.0 (Android 3.2.2; Mobile; rv:15.0) Gecko/15.0 Firefox/15.0 # 3. 隨機生成IE的瀏覽器user_agent信息 print(fake.internet_explorer()) # Mozilla/5.0 (compatible; MSIE 8.0; Windows 98; Win 9x 4.90; Trident/3.1) # 4. 隨機生成Opera的瀏覽器user_agent信息 print(fake.opera()) # Opera/9.47.(X11; Linux i686; cv-RU) Presto/2.9.186 Version/11.00 # 5. 隨機生成Safari的瀏覽器user_agent信息 print(fake.safari()) """ Mozilla/5.0 (iPod; U; CPU iPhone OS 4_2 like Mac OS X; ne-NP) AppleWebKit/534.29.1 (KHTML, like Gecko) Version/3.0.5 Mobile/8B119 Safari/6534.29.1 """ # 6. 隨機Linux信息 print(fake.linux_platform_token()) # X11; Linux x86_64 # 7. 隨機user_agent信息 print(fake.user_agent()) # Mozilla/5.0 (Windows NT 5.0; si-LK; rv:1.9.1.20) Gecko/2017-09-23 19:50:28 Firefox/3.8
這個意義不大,完全可以使用Python的內置模塊,或者numpy來實現,這里不說了。
from faker import Faker fake = Faker(locale="zh_CN") # 1. 隨機字符串 print(fake.pystr()) # nyfOoBhwiCAYECiKOULE # 2. 隨機字母 print(fake.random_element()) # c # 3. 隨機字母 print(fake.random_letter()) # A # 4. 隨機生成一個段落 print(fake.paragraph()) # 產品特別為了文章.研究不同評論就是還是工程. # 5. 隨機生成多個段落 print(fake.paragraphs()) """ ['一下手機希望責任.合作空間聯系最大.', '用戶免費中心部分就是如何男人.次數美國自己影響程序服務.你的類別歡迎日本是一.', '數據情況工作一起發展應該自己.發展資源內容.'] """ # 6. 隨機生成一句話 print(fake.sentence()) # 更新法律學生應用. # 7. 隨機生成多句話,與段落類似 print(fake.sentences()) # ['服務不過而且對于美國今天價格.', '發布全國語言帖子.', '產品關系問題產品.'] # 8. 隨機生成一篇文章 print(fake.text()) """ 這是價格方法閱讀.發布對于經濟地區開發相關你們合作. 一些更新個人學生重要.什么威望網絡影響. 市場這些環境閱讀那個類別.軟件男人怎么等級狀態日本您的. 您的閱讀地方論壇.廣告幫助位置企業.以下應用運行主要當前只是. 簡介只要來自如果科技.那么文化進入公司電話. 名稱威望游戲報告最新日期論壇.最大為了如何提高大學.還是文件因為喜歡語言.的是以及資料是否現在兩個. """ # 9. 隨機生成詞語 print(fake.word()) # 過程 # 10. 隨機生成多個詞語,用法與段落,句子,類似 print(fake.words()) # ['任何', '參加', '正在'] # 11. 隨機生成二進制編碼 print(fake.binary()) # 非常長, 不打印了 # 12. 隨機生成兩位語言編碼 print(fake.language_code()) # ks # 13. 隨機生成語言/國際 信息 print(fake.locale()) # shs_CA # 14. 隨機生成MD5 print(fake.md5()) # 0df0396328281f32b1922cd82016580d # 15. 隨機生成密碼,可選參數: # length:密碼長度;special_chars:是否能使用特殊字符;digits:是否包含數字;upper_case:是否包含大寫字母;lower_case:是否包含小寫字母 print(fake.password()) # C^!5fIk!s8 # 16. 隨機SHA1 print(fake.sha1()) # e7d9fa4f3e9a25e5ab44d88971e4c56ef4cc446f # 17. 隨機SHA256 print(fake.sha256()) # 47f9163f2a72edc855ef25289c2cfcd4c213842607b4b936c12a43b477c8ed77 # 18. 隨機UUID print(fake.uuid4()) # 45dc0754-b3e3-4c94-bdcb-d20a3a8f4d9d
關于怎么在python中使用faker庫批量生成假數據就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。