Skip to main content

complete file compare software in python with classification

complete file compare software in python with classification


In previous article i have posted code for file comapre in python in this article i have have modified the code a lot. It is full working code. Kindly verify and revert if you like it. Also i have classified the records which are old ones and which are from new one in difference file.

from tkinter import filedialog

from tkinter import *

import os



window = Tk()

window.title("My File Compare...")

window.geometry('750x200')

lbl1 = Label(window, text="Select Old File Path")

lbl1.grid(column=0, row=0)

txt1 = Entry(window,width=80)

txt1.grid(column=1, row=0)

lbl2 = Label(window, text="Select new File Path")

lbl2.grid(column=0, row=2)

txt2 = Entry(window,width=80)

txt2.grid(column=1, row=2)



def browsefunc1():

    filename = filedialog.askopenfilename(initialdir = "D:/QA/")

    print(filename)

    txt1.delete(0,END)

    txt1.insert(0,filename)

   

def browsefunc2():

    filename = filedialog.askopenfilename(initialdir = "D:/QA/")

    print(filename)

    txt2.delete(0,END)

    txt2.insert(0,filename)

   

btn = Button(window, text="choose old file", command=browsefunc1)

btn.grid(column=2, row=0)

btn1 = Button(window, text="choose new file", command=browsefunc2)

btn1.grid(column=2, row=2)





def compare_files():

    first = txt1.get()

    second = txt2.get()

    old = open(first,'r')

    new = open(second,'r')

    #in new but not in old

    new_extra = set(new) - set(old)

   

    with open(second) as f1:

        first_line1 = f1.readline()   

        #print(first_line1)

    with open(os.path.dirname(os.path.abspath(second))+'/'+os.path.splitext(os.path.split(second)[1])[0]+'_DIFFERENCE.csv', 'a') as file_out:

        file_out.write('Change Table,'+first_line1)

        #print(first_line1)

    # write to output files   

    with open(os.path.dirname(os.path.abspath(second))+'/'+os.path.splitext(os.path.split(second)[1])[0]+'_DIFFERENCE.csv', 'a') as file_out2:

        for line2 in new_extra:

            file_out2.write('NEW TABLE,'+line2)

            #print(first_line1)

    old.close()

    new.close()

    first = txt1.get()

    second = txt2.get()

    old = open(first,'r')

    new = open(second,'r')

    #in old but not in new

    old_extra = set(old) - set(new)

    #with open(os.path.dirname(os.path.abspath(second))+'/'+os.path.splitext(os.path.split(second)[1])[0]+'_DIFFERENCE.csv', 'a') as file_out2:

       

    with open(os.path.dirname(os.path.abspath(second))+'/'+os.path.splitext(os.path.split(second)[1])[0]+'_DIFFERENCE.csv', 'a') as file_out2:

        #file_out2.write('in old and not in new\n')

        for line2 in old_extra:

            file_out2.write('OLD TABLE,'+line2)

            #print(first_line1)



btn2 = Button(window, text="Compare file", command=compare_files)

btn2.grid(column=1, row=3)

window.mainloop()

Comments

Popular posts from this blog

Add, remove, search an item in listview in C#

Below is the C# code which will help you to add, remove and search operations on listview control in C#. Below is the design view of the project: Below is the source code of the project: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Treeview_control_demo {     public partial class Form2 : Form     {         public Form2()         {             InitializeComponent();             listView1.View = View.Details;                   }         private void button1_Click(object sender, EventArgs e)         {             if (textBox1.Text.Trim().Length == 0)...

display files and directories in Listview

Below is the C# code which displays all files and directories in listview control with their file size and creation date. If it is file then it also displays the extension of the file e.g. .txt, .jpg etc Below is the design view of the project: Listview to display files and directories with size and date created Below is the source code of the project: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; namespace search_in_listview {     public partial class Form1 : Form     {         public Form1()         {             InitializeComponent();                   }         private void button1_Click(object sender, EventArgs ...

Add worklog in Jira using Python

 Below is the Python code to add the worklog in Jira. You need to install a request library for this. Here is the code: import requests from requests.auth import HTTPBasicAuth import json url = "https://your jira address here/rest/api/2/issue/ticket_number/worklog" auth = HTTPBasicAuth("username", "jira access token") headers = {     "Accept": "application/json",     "Content-Type": "application/json" } payload = json.dumps({     "comment": {         "content": [             {                 "content": [                     {                         "text": "This is for QA Testing",                         "type": "text"                     } ...