我想使用Python显示系统的所有Internet历史信息。 index.dat文件包含用户的所有历史信息,但它已编码。我怎么解码呢?
[我听说过WinInet方法INTERNET_CACHE_ENTRY_INFO
。它提供有关访问过的网站,点击次数等的信息。]
Python中是否有可用于实现此目的的库?如果没有,有没有其他选择?
答案 0 :(得分:2)
仅从index.dat文件获取URL的代码(仅限IE的历史记录)
import sys,os
from string import *
from binascii import *
from chardet import *
import re
arr=[]
ar=[]
st=""
url=""
lines=[]
def removenonascii(s):
l=""
for i in s:
if(ord(i)==46 or ord(i)==47 or ord(i)==72 or ord(i) in range(97,97+26) or ord(i) in range(65,65+26)):
l=l+i
lines=l.split('\n')
for line in lines:
if line.startswith("http"):
print line.split("URL")[0]
infile =open("C:\Users\Cho\AppData\Local\Microsoft\Windows\History\History.IE5\MSHist012012030720120308\index.dat","r")
for line in infile:
arr=line.split("Cho")
for s in arr:
removenonascii(s)
print s
答案 1 :(得分:1)
如果您想为Firefox历史记录执行此操作,则它是用户的firefox配置文件中的places.sqlite文件中的SQLITE数据库。它可以使用python的sqlite3库打开。现在,如果你只关心资源管理器(正如你提到index.dat所暗示的那样),那我就不知道了。