2016-09-28 71 views
1

我正在編寫一個python腳本來監視網頁中的更改。我有python實現diff命令,我有一個文件夾中的diff輸出文件。如何使用python從差異輸出中獲取警報

我有260個差異輸出文件。從邏輯上講,我無法檢查全部260以知道哪個文件有變化。

是否有Python解決方案來讀取所有的差異文件,並提醒我有文件名有變化。

sample filename in my diff output folder: ['4streaming', 'net-log-2016-09- 26-12:29:32']-diff-output-2016-09-27-13:07:32.html 



Required output: 4streaming has changed 

請原諒我,如果我提問的方式是錯誤的。我是新來的stackoverflow論壇wrt提問。

回答

4

要檢查兩個文件具有相同的內容,您可以使用filecmp模塊:

>>> import filecmp 
>>> filecmp.cmp('a_file.txt', 'another_file.txt') 
True 

所以你的情況,你有很多的文件,你可以自己的名字存儲在一個列表(例如。 file_list中),並使用itertools與別人比較的每個項目==文件列表中只有一次:

import itertools 
for i,j in itertools.combinations(File_list, 2): 
    filecmp.cmp(i, j) #where i,j are actual file names 
    # do something based on the result 

*要在一個目錄下的所有文件名來看看this後得到的列表。

另一種方法是對它們進行哈希和比較哈希。

相關問題