
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>>
Пункти, які потрібно розглянути:
- Початок роботи з SDK генератора HTML-звітів Python
- Запустіть клієнт API
- Завантажте шаблон і файли джерел даних
- Відображення даних XML на сторінці HTML
- Завантажити файл HTML
Налаштуйте 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) |
У результаті завантажені файли будуть доступні в розділі файлів вашої інформаційної панелі в хмарі.
Відображення даних XML на сторінці HTML за допомогою Python
Щоб представити дані XML на сторінці HTML, дотримуйтесь наступних кроків:
- Створіть екземпляр AssemblyApi з client_id і client_secret.
- Налаштуйте інформацію про шаблон із шляхом до файлу, назвою сховища, ідентифікатором версії та паролем.
- Підготуйте запит на збірку за допомогою AssembleOptions із даними звіту, інформацією про шаблон, шляхом виведення та форматом збереження.
- Створіть 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, будь ласка, зв’яжіться з нами через наш форум.
Дивись також
Ось деякі пов’язані статті, які можуть бути вам корисними: