我正在編寫一個Python應用程序,其中包括需要知道用戶正在Web瀏覽器中查看哪些網站或以其他方式連接到OS X和如果可能的話,Linux。這是爲了追蹤用戶訪問某些網站的時間。如何檢測用戶正在查看或連接到哪個網站
我知道在OS X上有一個Cocoa調用,它在Safari中返回當前頁面,但這也必須與Chrome和Firefox一起工作,理想情況下與軟件中已知或未知的任何客戶端一起使用。
我已經研究過的第一件事就是通過libpcap,我可以在Python與pylibpcap使用pcap。 pcap用於數據包捕獲,理論上,據我所知,我可以檢測數據包是否流向/來自某些「黑名單」IP地址。這樣做的工作,但如果一個靜態的網頁在瀏覽器中打開並保持原樣,我將無法通過此機制檢測到它。
首先,我甚至可以用libpcap做上面描述的嗎?我是一個網絡過濾等初學者,所以我不完全確定。
其次,有沒有更好的方法來做到這一點? (OS X的應用程序TimeSink有一個有趣的方法,即查看標題欄中顯示的內容以決定用戶正在瀏覽哪個網站。這對我來說並不理想,原因有兩個:(1)我可能無法確鑿地決定是由標題,(2)我只能看到當前分頁標題訪問過的域名。)
明顯的地方在這裏似乎是掛接到DNS查找。 – 2012-02-23 07:12:28
@Lattyware HM,任何線索如何做到這一點? Google搜索空了。 – terrace 2012-02-25 08:42:05