刺激!一行代碼即可導(dǎo)出所有瀏覽記錄

一行Python代碼即可導(dǎo)出多種瀏覽器的歷史記錄?就像這樣?

現(xiàn)在來(lái)說(shuō)說(shuō)原理,不管是Windows還是MAC,Chrome等瀏覽器的歷史數(shù)據(jù)都是存儲(chǔ)在本地的SQLite數(shù)據(jù)庫(kù)中,例如Windows用戶(hù)可以在C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default找到,當(dāng)然在Python中我們可以使用內(nèi)置OS模塊找到該數(shù)據(jù)庫(kù)文件,再使用Python內(nèi)置的sqlite3模塊可以輕松讀取并導(dǎo)出瀏覽記錄數(shù)據(jù),而這個(gè)過(guò)程在GitHub上已經(jīng)有一位外國(guó)小哥幫我們完成了,總共不到200行代碼,現(xiàn)在我們只要使用pip?install?browserhistory安裝,接著進(jìn)入Python導(dǎo)入
import?browserhistory?as?bh現(xiàn)在只要一行代碼即可查看全部歷史瀏覽記錄
bh.get_browserhistory()JSON格式數(shù)據(jù)不怎么好看,可以借助Pandas轉(zhuǎn)換為表格,并且可以查看指定瀏覽器的記錄,比如Safari
import?pandas?as?pd
pd.DataFrame.from_dict(bh.get_browserhistory()['safari'])當(dāng)然也可以一行代碼將歷史記錄導(dǎo)出為CSV
bh.write_browserhistory_csv()
打開(kāi)我的Safari記錄看看,最早的一條記錄居然是去年6月的調(diào)試Django項(xiàng)目的記錄,看來(lái)很久沒(méi)有清空了

但是在保存數(shù)據(jù)時(shí)有一個(gè)小插曲,作者在源碼中使用CSV模塊來(lái)將數(shù)據(jù)寫(xiě)入CSV表格時(shí)使用的編碼是UTF-8,這會(huì)導(dǎo)致中文亂碼

所以只要進(jìn)入源碼將UTF-8改為utf-8_sig就能正常保存中文了,或者直接copy過(guò)來(lái)源碼并修改也是可以的。并且要注意執(zhí)行程序時(shí)要徹底退出瀏覽器,否則會(huì)丟失對(duì)應(yīng)瀏覽器的記錄。
最后,有了幾萬(wàn)條瀏覽記錄,就可以進(jìn)行一些簡(jiǎn)單分析,比如面向搜索引擎編程的我,最常訪問(wèn)的網(wǎng)站就是百度、Google、GitHub、stack overflow等,當(dāng)然你也可以寫(xiě)一個(gè)簡(jiǎn)單的腳本并打包,獲取某人的瀏覽記錄,看看TA上班是不是愛(ài)摸魚(yú),或者根據(jù)妹子的訪問(wèn)記錄來(lái)找點(diǎn)話(huà)題,大家自由發(fā)揮
由于微信平臺(tái)算法改版,公號(hào)內(nèi)容將不再以時(shí)間排序展示,如果大家想第一時(shí)間看到我們的推送,強(qiáng)烈建議星標(biāo)我們和給我們多點(diǎn)點(diǎn)【在看】。星標(biāo)具體步驟為:
(1)點(diǎn)擊頁(yè)面最上方“小詹學(xué)Python”,進(jìn)入公眾號(hào)主頁(yè)。
(2)點(diǎn)擊右上角的小點(diǎn)點(diǎn),在彈出頁(yè)面點(diǎn)擊“設(shè)為星標(biāo)”,就可以啦。
感謝支持,比心。

