Відображення даних XML на сторінці HTML

XML виступає як самоописова мова, яка підтримується W3C, спеціально розроблена для ефективного зберігання даних і безперебійного обміну даними. Для розробників додатків Python адаптивність формату XML дозволяє легко трансформувати його в зручні для користувача та читабельні формати, такі як HTML. Ця стаття проведе вас через процес використання GroupDocs.Assembly Cloud SDK для Python і простих шаблонів для перетворення даних XML у вичерпні звіти HTML.

Передумови:

Перш ніж почати, переконайтеся, що у вас є наведене нижче.

  • У вашій системі встановлено Python. — Встановлено GroupDocs.Assembly Cloud SDK для Python.
  • Активний обліковий запис GroupDocs.Assembly Cloud із дійсними обліковими даними API.
  • Зразки даних і шаблони для тестування (ми будемо використовувати наступні зразки даних XML і шаблон звіту).

Зразок даних XML

Використовуйте такі дані 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>

Зразок шаблону

Згенеруйте вказаний шаблон у форматі TXT, DOCX або необхідному форматі для перегляду даних менеджерів разом із відповідними клієнтами та пов’язаною інформацією. Згодом перейдіть до впровадження коду для створення звіту.

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

Пункти, які потрібно розглянути:

Налаштуйте Python HTML Report Generator SDK

Щоб розпочати процес, інтегруйте GroupDocs.Assembly Cloud SDK для Python у свій проект Python, використовуючи pip (інсталятор пакета Python). Виконайте наступну команду в консолі:

pip install groupdocs-assembly-cloud

Запустіть клієнт API

Потім отримайте свій Ідентифікатор клієнта та Секрет клієнта з інформаційної панелі та додайте наданий код, як показано нижче:

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"

Завантажте джерело даних і файли шаблонів

По-перше, завантажте джерело даних і файли шаблонів у хмару, використовуючи наведений нижче приклад коду:

# 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

У результаті завантажені файли будуть доступні в розділі файлів вашої інформаційної панелі в хмарі.

Відображення даних XML на сторінці HTML за допомогою Python

Щоб представити дані XML на сторінці HTML, дотримуйтесь наступних кроків:

  1. Створіть екземпляр AssemblyApi з client_id і client_secret.
  2. Налаштуйте інформацію про шаблон із шляхом до файлу, назвою сховища, ідентифікатором версії та паролем.
  3. Підготуйте запит на збірку за допомогою AssembleOptions із даними звіту, інформацією про шаблон, шляхом виведення та форматом збереження.
  4. Створіть HTML-звіт за допомогою методу AssemblyApi.assemble_document(AssembleOptions).

Наданий зразок коду є прикладом реалізації Python SDK для REST API генератора звітів HTML, уможливлюючи представлення даних XML на сторінці 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)

Завантажте файл HTML

Код, наведений у попередньому кроці, зберігає перетворений файл HTML у хмарі. Щоб завантажити його, ви можете використати наведений нижче фрагмент коду.

# 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\\")

Висновок

У цій статті ми охопили етапи представлення XML-даних на сторінці HTML за допомогою GroupDocs.Assembly Cloud REST API у поєднанні з його Python SDK. Цей надійний API дає змогу розробникам легко створювати динамічні звіти в різноманітних форматах, використовуючи інформацію з джерел XML або XML і поєднуючи шаблони, що охоплюють документи Word, електронні таблиці та текстові файли.

Крім того, щоб отримати більш повне розуміння GroupDocs.Assembly Cloud API, ознайомтеся з детальною документацією. Крім того, скористайтеся перевагами нашої області API reference, яка дає вам змогу безпосередньо взаємодіяти з нашими API та спостерігати за їх роботою прямо у вашому браузері. Ви також можете вільно отримати доступ до повного вихідного коду Python SDK на Github.

На завершення ми постійно публікуємо свіжі статті в блозі, в яких досліджуємо низку форматів файлів та їх аналіз за допомогою REST API. Зв’яжіться з нами, щоб отримати найновішу інформацію.

Задайте питання

Якщо у вас виникнуть запитання чи непорозуміння щодо генератора звітів HTML, будь ласка, зв’яжіться з нами через наш форум.

Дивись також

Ось деякі пов’язані статті, які можуть бути вам корисними: