Wyświetl dane XML na stronie HTML

XML jest językiem samoopisowym obsługiwanym przez W3C, stworzonym specjalnie z myślą o wydajnym przechowywaniu danych i bezproblemowej wymianie danych. Twórcom aplikacji w języku Python możliwość adaptacji formatu XML pozwala na łatwą transformację do przyjaznych dla użytkownika, czytelnych dla człowieka formatów, takich jak HTML. Ten artykuł poprowadzi Cię przez proces wykorzystania pakietu GroupDocs.Assembly Cloud SDK dla języka Python i prostych szablonów do tłumaczenia danych XML na kompleksowe raporty HTML.

Warunki wstępne:

Zanim zaczniesz, upewnij się, że masz przygotowane następujące elementy:

  • Python zainstalowany w twoim systemie.
  • Zainstalowano pakiet SDK GroupDocs.Assembly Cloud dla języka Python.
  • Aktywne konto GroupDocs.Assembly Cloud z ważnymi poświadczeniami API.
  • Przykładowe dane i szablony do testów (wykorzystamy poniższe przykładowe dane XML i szablon raportu).

Przykładowe dane XML

Użyj następujących danych XML.

<Managers>
	<Manager>
		<Name>John Smith</Name>
		<Contract>
			<Client>
				<Name>A Company</Name>
			</Client>
			<Price>1200000</Price>
		</Contract>
		<Contract>
		...
		</Contract>
		...
	</Manager>
	<Manager>
		<Name>Tony Anderson</Name>
		...
	</Manager>
	...
</Managers>

Przykładowy szablon

Wygeneruj określony szablon w formacie TXT, DOCX lub w formacie niezbędnym do iteracji danych Menedżerów wraz z odpowiadającymi im Klientami i powiązanymi informacjami. Następnie przystąp do implementacji kodu w celu wygenerowania raportu.

<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>

Punkty do omówienia:

Skonfiguruj zestaw SDK generatora raportów HTML w języku Python

Aby zainicjować proces, włącz pakiet SDK GroupDocs.Assembly Cloud dla języka Python do swojego projektu w języku Python, używając polecenia pip (instalator pakietu Pythona). Wykonaj kolejne polecenie w konsoli:

pip install groupdocs-assembly-cloud

Uruchom klienta API

Następnie pobierz swój Identyfikator klienta i Tajemnica klienta z panelu i włącz dostarczony kod, jak pokazano poniżej:

import groupdocsassemblycloud as assembly
# Get app_sid & app_key from https://dashboard.groupdocs.cloud after free registration.
app_sid = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
app_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Get File API configurations.
configuration = assembly.Configuration(app_sid, app_key)
configuration.api_base_url = "https://api.groupdocs.cloud"
storage_name = "LocalStorage"

Prześlij źródło danych i pliki szablonów

Najpierw prześlij źródło danych i pliki szablonów do chmury, korzystając z przykładowego kodu podanego poniżej:

# Create an instance of the file API
file_api = groupdocsassemblycloud.FileApi.from_config(configuration)
# Call upload file request
request = groupdocsassemblycloud.UploadFileRequest("python-testing\input-sample-file.xml", "H:\\groupdocs-cloud-data\\input-sample-file.xml", "storage_name")
# Upload file to the cloud
response = file_api.upload_file(request)
print(response.uploaded)
view raw upload-file.py hosted with ❤ by GitHub

W efekcie przesłane pliki będą dostępne w sekcji plików Twojego dashboardu w chmurze.

Wyświetlaj dane XML na stronie HTML za pomocą języka Python

Aby zaprezentować dane XML na stronie HTML, wykonaj następujące kroki:

  1. Utwórz instancję AssemblyApi z identyfikatorem klienta i sekretem_klienta.
  2. Skonfiguruj informacje o szablonie, obejmujące ścieżkę pliku, nazwę magazynu, identyfikator wersji i hasło.
  3. Przygotuj żądanie złożenia za pomocą AssembleOptions z danymi raportu, informacjami o szablonie, ścieżką wyjściową i formatem zapisu.
  4. Wygeneruj raport HTML przy użyciu metody AssemblyApi.assemble_document(AssembleOptions).

Dostarczony przykładowy kod ilustruje implementację Pythona SDK dla generatora raportów HTML REST API, umożliwiającego prezentację danych XML na stronie HTML.

import groupdocsassemblycloud as assembly
client_id = "XXXX-XXXX-XXXX-XXXX"
client_secret = "XXXXXXXXXXXXXXXX"
assemblyAPI = assembly.AssemblyApi(client_id,client_secret )
# Set up template info
templateInfo = assembly.TemplateFileInfo()
templateInfo.file_path= 'Python_Testing/template.txt'
templateInfo.storage_name= 'LocalStorage'
templateInfo.version_id= ''
templateInfo.password='abc123'
# Prepare assemble request
options=assembly.AssembleOptions()
options.report_data = 'Python_Testing/report-data.xml';
options.template_file_info = templateInfo
options.output_path = 'Python_Testing/report.html';
options.save_format = 'html'
# Generate HTML report
assemblyAPI.assemble_document(options)

Pobierz plik HTML

Kod podany w poprzednim kroku zapisuje przekonwertowany plik HTML w chmurze. Aby go pobrać, możesz użyć poniższego fragmentu kodu.

# Create instance of the API
file_api = groupdocsassemblycloud.FileApi.from_config(configuration)
request = groupdocs_conversion_cloud.DownloadFileRequest('Python_Testing/report.html', my_storage)
response = file_api.download_file(request)
# Move downloaded file to your working directory
shutil.move(response, "C:\\Files\\")

Wniosek

W tym artykule omówiliśmy kroki związane z prezentacją danych XML na stronie HTML za pomocą interfejsu API REST GroupDocs.Assembly Cloud w połączeniu z pakietem SDK języka Python. Ten solidny interfejs API umożliwia programistom bezproblemowe tworzenie dynamicznych raportów w różnych formatach, wykorzystanie informacji ze źródeł XML lub XML oraz łączenie szablonów obejmujących dokumenty programu Word, arkusze kalkulacyjne i pliki tekstowe.

Dodatkowo, aby uzyskać pełniejsze zrozumienie interfejsu API GroupDocs.Assembly Cloud, zapoznaj się ze szczegółową dokumentacją. Skorzystaj także z naszego obszaru odniesienia API, który umożliwia bezpośredni kontakt z naszymi interfejsami API i obserwowanie ich w działaniu bezpośrednio z poziomu przeglądarki. Możesz także swobodnie uzyskać dostęp do pełnego kodu źródłowego pakietu SDK języka Python na Github.

Podsumowując, konsekwentnie tworzymy nowe artykuły na blogu, eksplorując szereg formatów plików i ich analizę przy użyciu interfejsu API REST. Skontaktuj się z nami, aby uzyskać najświeższe informacje.

Zadać pytanie

W przypadku jakichkolwiek pytań lub niejasności dotyczących generatora raportów HTML, prosimy o kontakt za pośrednictwem naszego forum.

Zobacz też

Oto kilka powiązanych artykułów, które mogą okazać się pomocne: