Memanipulasi file HTML secara programatik sangat penting untuk membangun alat dan editor konten web dinamis. Aspose.HTML for Python via .NET menyediakan implementasi DOM berbasis standar yang memungkinkan Anda membuat dokumen dari awal, memeriksa markup yang ada, dan menulis ulang — semuanya tanpa browser dan tanpa ekspresi reguler. Panduan ini membagi pekerjaan menjadi tiga bagian terfokus: create, read, dan edit, masing‑masing dengan contoh yang dapat dijalankan. Pada akhir panduan Anda akan memiliki alur kerja yang dapat digunakan kembali dan dapat disisipkan ke dalam pipeline konten berbasis Python mana pun.
Sebelum Anda Memulai: Prasyarat dan Instalasi
Untuk mengikuti tutorial ini Anda memerlukan:
- Python 3.8 atau yang lebih baru terpasang di mesin pengembangan Anda.
- Sistem operasi 64‑bit (Windows, Linux, atau macOS) — paket ini menyertakan binary .NET native.
- Lisensi Aspose.HTML for Python via .NET yang valid (lisensi sementara tersedia).
Instal SDK dengan pip:
pip install aspose-html-net
Anda juga dapat mengunduh biner terbaru secara langsung dari halaman unduhan. Setelah instalasi, impor tipe yang Anda butuhkan:
from aspose.html import HTMLDocument
from aspose.html.saving import HTMLSaveOptions
Jika Anda memiliki file lisensi, terapkan sekali saat aplikasi dimulai sehingga output bebas dari batasan evaluasi:
from aspose.html import License
license = License()
license.set_license("Aspose.HTML.Python.lic")
Dengan SDK siap, mari kita jalankan tiga operasi inti.
Membangun Secara Bertahap: Membuat, Membaca, dan Mengedit HTML dengan Python
Buat Dokumen HTML di Python
Dokumen HTMLDocument kosong sudah berisi kerangka html, head, dan body, sehingga Anda dapat mulai menambahkan node segera. Elemen dibuat dengan create_element(), node teks dengan create_text_node(), dan keduanya dilampirkan ke pohon dengan append_child().
from aspose.html import HTMLDocument
# An empty document already has <html>, <head>, and <body>
document = HTMLDocument()
document.title = "Sample Document"
# <h1 id="mainHeader">Welcome to Aspose.HTML</h1>
header = document.create_element("h1")
header.set_attribute("id", "mainHeader")
header.append_child(document.create_text_node("Welcome to Aspose.HTML"))
document.body.append_child(header)
# <p>This document was generated programmatically.</p>
paragraph = document.create_element("p")
paragraph.text_content = "This document was generated programmatically."
document.body.append_child(paragraph)
document.save("created.html")
Karena setiap node dibuat melalui dokumen, markup yang dihasilkan selalu terstruktur dengan baik — tidak ada penyeimbangan tag manual dan tidak ada penggabungan string.
Membaca Dokumen HTML yang Ada Menggunakan Python
Berikan jalur file ke konstruktor HTMLDocument dan Aspose.HTML mengurai file menjadi pohon DOM yang hidup. Dari sana Anda dapat menanyakannya persis seperti yang Anda lakukan di browser: berdasarkan id, nama tag, atau dengan selector CSS.
from aspose.html import HTMLDocument
document = HTMLDocument("created.html")
print("Title:", document.title)
# Look up a single element by its id
header = document.get_element_by_id("mainHeader")
if header is not None:
print("Header:", header.text_content)
# Iterate over every paragraph in the document
paragraphs = document.get_elements_by_tag_name("p")
for index in range(paragraphs.length):
print(f"Paragraph {index}:", paragraphs[index].text_content)
# CSS selectors work too
for link in document.query_selector_all("a[href]"):
print("Link:", link.get_attribute("href"))
# Serialize the whole tree back to markup when you need the raw HTML
print(document.document_element.outer_html)
Anda juga dapat mengurai markup yang sudah berada di memori dengan melewatkan konten ditambah URI dasar, yang berguna ketika HTML datang dari respons API:
content = "<html><body><p>Loaded from a string.</p></body></html>"
document = HTMLDocument(content, ".")
Mengedit Dokumen HTML yang Ada di Python
Pengeditan hanyalah mutasi DOM: tetapkan ke text_content atau inner_html, ubah atribut dengan set_attribute(), sisipkan node dengan append_child(), dan hapus node dengan remove_child(). Simpan hasilnya ketika Anda selesai.
from aspose.html import HTMLDocument
document = HTMLDocument("created.html")
# 1. Update the document title
document.title = "Edited Document Title"
# 2. Replace the header text
header = document.get_element_by_id("mainHeader")
if header is not None:
header.text_content = "Edited Header via Aspose.HTML"
# 3. Insert a highlighted notice block
notice = document.create_element("div")
notice.set_attribute("class", "highlight")
notice.inner_html = "<strong>Important notice:</strong> This div was inserted at runtime."
document.body.append_child(notice)
# 4. Remove the first paragraph
paragraphs = document.get_elements_by_tag_name("p")
if paragraphs.length > 0:
obsolete = paragraphs[0]
obsolete.parent_node.remove_child(obsolete)
document.save("edited.html")
Ketiga operasi ini tersusun dengan rapi: buat sekali, baca kapan pun Anda perlu memeriksa, dan edit sesering perubahan konten.
Catatan: Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui jalur file (
created.html,edited.html, dll.) agar sesuai dengan lokasi file Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terinstal dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke dokumentasi resmi atau hubungi tim dukungan untuk bantuan.
Kesimpulan
Membuat, membaca, dan mengedit file HTML di Python menjadi mudah dengan Aspose.HTML for Python via .NET. Setiap operasi memetakan ke idiom DOM yang familiar: membangun node dengan create_element(), menanyakannya dengan get_element_by_id() dan query_selector_all(), memodifikasinya melalui text_content, inner_html, dan set_attribute(), lalu menyimpannya dengan save(). Ingatlah untuk memperoleh lisensi yang tepat untuk penggunaan produksi; detail harga tersedia di halaman produk, dan lisensi sementara dapat diperoleh dari halaman lisensi sementara. Dengan SDK di tangan, Anda kini dapat membangun alat manipulasi HTML yang kuat yang terintegrasi mulus ke dalam aplikasi berbasis Python apa pun.
FAQs
Bagaimana cara membuat file HTML di Python dengan Aspose.HTML? Instansiasi
HTMLDocumentkosong, bangun node dengancreate_element()dancreate_text_node(), lampirkan mereka denganappend_child(), dan panggildocument.save("created.html"). Contoh pembuatan di atas menunjukkan urutan lengkap.Bagaimana cara membaca isi file HTML yang sudah ada? Berikan jalur file ke konstruktor
HTMLDocument, lalu query DOM denganget_element_by_id(),get_elements_by_tag_name(), atauquery_selector_all(). Nilai dapat diakses melaluitext_content,inner_html, danget_attribute().Bagaimana cara saya mengedit dokumen HTML dan menyimpan perubahan? Muat dokumen, tetapkan ke
text_contentatauinner_html, ubah atribut denganset_attribute(), tambahkan node denganappend_child(), dan hapus mereka denganremove_child(). Kemudian panggildocument.save(), secara opsional melewatkan instanceHTMLSaveOptions.Di mana saya dapat menemukan contoh lebih banyak, dokumentasi, dan dukungan? Dokumentasi resmi menyediakan panduan terperinci, referensi API mencantumkan semua kelas dan anggota, dan komunitas dapat dihubungi melalui forum Aspose.HTML.
