the code given in chapter 2 of ceate-modify-reuse in python book to compare snapshots is not working.....
its not comparing the snapshots and giving exception message can anyone help me?
the complete code is available in code resources section of this site
parameters are passed in snap1 and snap2
its giving exception mssg "Problems encountered accessing snapshot files!"
here is the code:
def compareSnapshots(snapfile1, snapfile2):
try:
pkl_file = open(snapfile1, 'rb')
dirs1 = pickle.load(pkl_file)
files1 = pickle.load(pkl_file)
pkl_file.close()
pk2_file = open(snapfile2, 'rb')
dirs2 = pickle.load(pk2_file)
files2 = pickle.load(pk2_file)
pk2_file.close()
except:
print "Problems encountered accessing snapshot files!"
raw_input("\n\nPress [Enter] to continue...")
return
result_dirs = list(difflib.unified_diff(dirs1, dirs2))
result_files = list(difflib.unified_diff(files1, files2))
added_dirs = []
removed_dirs = []
added_files = []
removed_files = []
for result in result_files:
if result.endswith("\n") == -1:
if result.startswith('+'):
resultadd = result.strip('+')
added_files.append(resultadd)
elif result.startswith('-'):
resultsubtract = result.strip('-')
removed_files.append(resultsubtract)
for result in result_dirs:
if result.endswith("\n") == -1:
if result.startswith('+'):
resultadd = result.strip('+')
added_dirs.append(resultadd)
elif result.startswith('-'):
resultsubtract = result.strip('-')
removed_dirs.append(resultsubtract)
print "\n\nAdded Directories:\n"
printList(added_dirs)
print "\n\nAdded Files:\n"
printList(added_files)
print "\n\nRemoved Directories:\n"
printList(removed_dirs)
print "\n\nRemoved Files:\n"
printList(removed_files)
raw_input("\n\nPress [Enter] to continue...")
