天天看點

一個黑科技,Python竟然可以僞造很多'假'的資料!

點選上方“菜鳥學Python”,選擇“星标”公衆号

幹貨第一時間推給你!!!

Python裡面的庫真的太多太多了,各種千奇百怪的都有。今天小編逛GitHub的時候發現一個好玩的庫,這個庫可厲害啦,竟然能夠模拟出很多以假亂真的資料。

在生産環境中,有點時候産品要上線,後端必要要做使用者的壓力測試,就需要大量的人員資訊資料去測試我們的産品,嘿嘿這個庫就可以派上用場啦,我們一起來看一下。

一個黑科技,Python竟然可以僞造很多'假'的資料!

這個神器竟然收獲了10000多顆星,1200多個fork,還是很厲害的,它支援Python2和Python3,可以模拟制造很多人員的資訊,而且使用起來非常友善,我們來看一下這個庫啥妙用。

01.如何安裝

直接pip3 install faker 非常友善

02.如何使用

1).輕松的建立一排人的名字,位址和資訊

一個黑科技,Python竟然可以僞造很多'假'的資料!

name:Peter Thompsonaddr:7025 Alice Lodge Suite 136Port Juanshire, WV 92045text:Season spring smile marriage fire answer run.Population read inside several seat travel. Player parent two pressure easy. Television customer century school.

name:Christopher Carpenteraddr:982 Harper VillageWest Marcusland, GA 93351text:Condition meeting hour arrive note newspaper condition. Response game police plan staff say plan.Reach ahead certain there health my store. Attack lay our.

2).按照地理位置,國家來建立不同的人名字

有同學說這個都是老外的位址,名字,能不能弄一些中文的名字。當然可以在這個fake是支援中文的名字和位址的:

一個黑科技,Python竟然可以僞造很多'假'的資料!

我們隻需要在Faker這個類初始化的時候選擇zn_CN就可以了,看一些列印的結果

1 盧瑜 新疆維吾爾自治區剛市孝南哈爾濱路f座 656763

2 聶秀芳 上海市哈爾濱市懷柔孟路L座 322988

3 王娜 海南省丹縣靜安劉路q座 799385

4 葉建國 河北省石家莊市永川張街d座 521237

5 杜歡 安徽省帆縣新城高路O座 228842

是不是很神奇啊,小編查了一下源碼,這個神奇的庫竟然支援模拟45個國家的人名字,位址等資訊。

一個黑科技,Python竟然可以僞造很多'假'的資料!

3).除了人名位址,還能模拟其他的資料

除了上面的人名,位址資訊,faker這個庫還能模拟出其他的更詳細的資料,比如國家,省,城市,縣城,區,街道,工作崗位,電話号碼等。

一個黑科技,Python竟然可以僞造很多'假'的資料!

1 黑龍江省 濤市 海港 遼甯省辛集市南溪濟南路Z座 817565 湯桂蘭 房産項目配套工程師 15663140494

2 山西省 邯鄲市 沙灣 陝西省重慶縣黃浦濟南路v座 936582 蔣宇 集裝箱業務 13783872876

3 海南省 嘉禾市 興山 廣東省海口縣海陵馬路M座 849210 王麗 電聲/音響工程師/技術員 13196533827

4 湖北省 建華市 西峰 貴州省西甯縣東城合肥路V座 856552 董秀珍 意大利語翻譯 13414389884

5 甯夏回族自治區 辛集縣 沙市 甘肅省遼陽縣花溪甘路e座 168010 郭玉 組裝工 18762413524

03.探索一下源碼

小編也非常好奇,這個庫哪裡來的這麼多的資訊呢,有沒有連接配接資料庫的支援~~就能随意所欲的創造這麼人的資訊。

于是我深入源碼探究了一番,原來在這個源碼庫裡面有一個provider檔案夾,裡面存放了大量的資訊,而且進行了分類整理整:

一個黑科技,Python竟然可以僞造很多'假'的資料!

我們随便挑選一個檔案夾people/zh_CN進去看一下,到底這個神奇的人名是怎麼來的,為啥弄的有模有樣的?

一個黑科技,Python竟然可以僞造很多'假'的資料!

原來是hardcode了一堆固定的人姓和名字,然後按照男女進行分類,并且名字的姓還按照一定權重進行分布,比如王,李,張,劉這些都是用的比較多的名字,然後再用算法按照一定的規則進行随機生成。

探尋了一番覺得這個庫還是很有意思的,尤其是在後端進行使用者壓力測試的非常有用!有興趣的小夥伴可以下載下傳玩一下,順便探索一下它的源碼,作者的代碼結構寫的非常工整,吸收一波功力。對這個庫有興趣的同學,歡迎留言吱一聲。

近期八大熱門:發現一個舔狗福利!這個Python爬蟲神器太爽了,自動下載下傳妹子圖檔!
盜墓熱再起!我爬取了6萬條《重新開機之極海聽雷》的評論,發現了這些秘密
用Python一鍵生成炫酷九宮格圖檔,火了朋友圈
菜鳥也瘋狂!8分鐘用Python做一個酷炫的家庭随手記
Github獲8300星!用Python開發的一個指令行的網易雲音樂
一道Python面試題,硬是沒憋出來,最後憋出一身汗!卧槽!Pdf轉Word用Python輕松搞定!教你6招,不錯的Python代碼技巧!每個程式員都是從菜鳥開始成長起來的,沒有人一開始就是程式員高手。菜鳥愛程式設計,專注于分享趣味的程式設計技巧,不限于Java, Python ,Go, Javascript等語言,讓菜鳥愛上程式設計,進階成為高手。菜鳥程式設計大學營
長按2秒,擷取Python必讀書單輸入:【書單】點這裡,進菜鳥學PythonB站大學營