Confronta i file Excel utilizzando l'API REST in Python.

Confronta i dati nei file Excel utilizzando l’API REST in Python

Excel è una delle applicazioni per fogli di calcolo più popolari e ampiamente utilizzate. Consente di organizzare, analizzare, calcolare e archiviare i dati in forma tabellare. È un requisito molto comune confrontare i dati dei file xlsx di due diversi file Excel o più versioni dello stesso file. Possiamo facilmente confrontare due fogli di calcolo o più file Excel per tenere traccia delle modifiche ed evidenziare le differenze in un nuovo file. In questo articolo impareremo come confrontare i file Excel utilizzando un’API REST in Python.

I seguenti argomenti devono essere trattati per confrontare il foglio di calcolo in questo articolo:

API REST e Python SDK per confrontare i file Excel

Per confrontare due o più file XLSX, utilizzeremo l’API Python SDK of GroupDocs.Comparison Cloud. Permette di confrontare ‎due o più documenti di formati supportati ed evidenzia le differenze in un file risultante. Si prega di installarlo utilizzando il seguente comando nella console:

pip install groupdocs-comparison-cloud

Si prega di ottenere l’ID cliente e il segreto dalla dashboard prima di seguire i passaggi menzionati. Una volta che hai il tuo ID e segreto, aggiungi il codice come mostrato di seguito:

# Questo esempio di codice mostra come aggiungere l'ID client e il segreto nel codice.
client_id = '659fe7da-715b-4744-a0f7-cf469a392b73';
client_secret = 'b377c36cfa28fa69960ebac6b6e36421';

configuration = groupdocs_comparison_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Confronta due file Excel usando Python

Possiamo confrontare due file Excel in Python sul cloud seguendo i semplici passaggi indicati di seguito:

  1. Carica i file XLSX nel cloud.
  2. Confronta i file Excel caricati.
  3. Scarica il file risultante.

Carica i file Excel

In primo luogo, caricheremo i file XLSX di origine e di destinazione nel cloud utilizzando il seguente esempio di codice:

# Questo esempio di codice illustra come caricare più file Excel nel cloud.
# Crea un'istanza dell'API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Carica file di esempio
for filename in glob.iglob("C:\\Files\\comparison\\upload\\*.xlsx", recursive=True):
    destFile = filename.replace("C:\\Files\\comparison\\upload\\", "",1)           
    file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
    print("Uploaded file: "+ destFile)

Di conseguenza, i file Excel caricati saranno disponibili nella sezione file della dashboard sul cloud.

Confronta i file Excel per le differenze in Python

Ora confronteremo i file Excel caricati a livello di codice seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di CompareApi.
  • Successivamente, imposta l’origine caricata e i percorsi del file di input XLSX di destinazione.
  • Quindi, inizializza l’oggetto ComparisonOptions e assegna i file di origine e di destinazione.
  • Quindi, imposta il percorso del file di output.
  • Successivamente, crea ComparisonsRequest con ComparisonOptions come argomento.
  • Infine, confronta i documenti Excel e ottieni risultati utilizzando il metodo comparisons().

L’esempio di codice seguente mostra come confrontare i fogli Excel online usando l’API REST in Python.

# Questo esempio di codice illustra come confrontare due file Excel.
# Crea le istanze API necessarie
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# File sorgente di input
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Immettere il file di destinazione
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# Definire le opzioni di confronto
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.xlsx"

# Crea richiesta di confronto
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# confrontare
response = api_instance.comparisons(request)
Come confrontare i dati in Excel e confrontare più file Excel

File Excel di origine e di destinazione.

Confronta 2 file Excel utilizzando un'API REST in Python.

Excel confronta due fogli in Python utilizzando l’API REST.

Scarica il file risultante

Di conseguenza, l’esempio di codice precedente salverà un file Excel appena creato con il confronto del foglio di calcolo sul cloud. Può essere scaricato utilizzando il seguente esempio di codice:

# Questo esempio di codice illustra come scaricare il file Excel dal cloud.
# Crea un'istanza dell'API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Scarica la richiesta di file
request = groupdocs_comparison_cloud.DownloadFileRequest("result.xlsx", "")

# Download file
response = file_api.download_file(request)

# Sposta il file scaricato nella tua directory di lavoro
shutil.move(response, "C:\\Files\\comparison\\")  

Confronta più file Excel in Python

Possiamo anche confrontare i fogli Excel per le differenze seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di CompareApi.
  • Successivamente, imposta il percorso del file XLSX della sorgente di input.
  • Quindi, imposta più percorsi di file XLSX di destinazione.
  • Successivamente, inizializza l’oggetto ComparisonOptions e assegna i file di origine e di destinazione.
  • Quindi, imposta il percorso del file di output.
  • Successivamente, crea ComparisonsRequest con ComparisonOptions come argomento.
  • Infine, il foglio Excel confronta online e ottiene risultati utilizzando il metodo comparisons().

L’esempio di codice seguente mostra come confrontare più file Excel usando un’API REST in Python.

# Questo esempio di codice illustra come confrontare più file Excel.
# Crea le istanze API necessarie
api_instance = groupdocs_comparison_cloud.ConfrontareApi.from_keys(client_id, client_secret)

# File sorgente di input
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Immettere il file di destinazione 1
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.xlsx"

# Immettere il file di destinazione 2
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.xlsx"

# Definire le opzioni di confronto
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "result_multiple.xlsx"

# Richiesta di confronto
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# Confrontare
response = api_instance.comparisons(request)

Ottieni l’elenco delle modifiche in Python

Possiamo ottenere un elenco di tutte le modifiche e confrontare i dati nei fogli Excel trovati durante il confronto dei file Excel seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di CompareApi.
  • Successivamente, imposta il percorso del file XLSX della sorgente di input.
  • Quindi, imposta il percorso del file XLSX di destinazione.
  • Successivamente, inizializza l’oggetto ComparisonOptions.
  • Quindi, assegna i file di origine/destinazione e imposta il percorso del file di output.
  • Successivamente, crea l’oggetto PostChangesRequest con ComparisonOptions come argomento.
  • Infine, ottieni i risultati chiamando il metodo postChanges().

L’esempio di codice seguente mostra come confrontare i dati in due fogli Excel per le corrispondenze usando l’API REST in Python.

# Questo esempio di codice illustra come ottenere un elenco delle modifiche rilevate durante il confronto.
# Crea le istanze API necessarie
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# File sorgente di input
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Immettere il file di destinazione
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# Definire le opzioni di confronto
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]

# Crea una richiesta di modifica post
request = groupdocs_comparison_cloud.PostChangesRequest(options)

# posta modifiche
response = api_instance.post_changes(request)

# Spettacolo
for change in response:
  print("Change # " + str(change.id + 1) + "- Target Text: " + str(change.target_text) + ", Text: " + str(change.text) + ", Type: " + str(change.type));

Prova in linea

Come confrontare i dati di due fogli excel? Prova il seguente strumento di confronto XLSX online gratuito per confrontare due fogli Excel per confrontare i dati. Questo strumento di confronto Excel confronta 2 fogli Excel online ed è sviluppato utilizzando l’API di cui sopra.

Conclusione

In questo articolo abbiamo imparato a:

  • confronta due fogli excel ed evidenzia le differenze in Python;
  • ottenere un elenco di elementi inseriti ed eliminati;
  • caricare in modo programmatico più di un file XLSX nel cloud;
  • scarica il file XLSX dal cloud.

Inoltre, puoi saperne di più su GroupDocs.Comparison Cloud API utilizzando la documentazione. Forniamo anche una sezione Riferimento API che ti consente di visualizzare e interagire con le nostre API direttamente attraverso il browser. In caso di ambiguità su come confrontare i fogli di calcolo Excel, non esitate a contattarci sul forum.

Guarda anche