Programatik olarak HTML dosyalarını işlemek, dinamik web içeriği araçları ve editörleri oluşturmak için esastır. Aspose.HTML for Python via .NET standart tabanlı bir DOM uygulaması sunar; bu sayede belgeleri sıfırdan oluşturabilir, mevcut işaretlemeyi inceleyebilir ve yeniden yazabilirsiniz — tüm bunlar bir tarayıcıya ve düzenli ifadelere ihtiyaç duymadan. Bu kılavuz, çalışmayı üç odaklanmış bölüme ayırır: create, read, ve edit, her biri kendi çalıştırılabilir örneğine sahiptir. Sonunda, herhangi bir Python tabanlı içerik hattına ekleyebileceğiniz yeniden kullanılabilir bir iş akışına sahip olacaksınız.

Başlamadan Önce: Önkoşullar ve Kurulum

Bu öğreticiyi takip etmek için şunlara ihtiyacınız var:

  • Geliştirme makinenizde Python 3.8 veya daha yeni bir sürüm yüklü.
  • 64-bit bir işletim sistemi (Windows, Linux veya macOS) — paket yerel .NET ikili dosyalarını içerir.
  • Geçerli bir Aspose.HTML for Python via .NET lisansı (geçici lisanslar mevcuttur).

SDK’yı pip ile kurun:

pip install aspose-html-net

En son ikili dosyaları doğrudan indirme sayfasından da indirebilirsiniz. Kurulumdan sonra, ihtiyacınız olan türleri içe aktarın:

from aspose.html import HTMLDocument
from aspose.html.saving import HTMLSaveOptions

Bir lisans dosyanız varsa, çıktının değerlendirme sınırlamalarından arınmış olması için uygulama başlangıcında bir kez uygulayın:

from aspose.html import License

license = License()
license.set_license("Aspose.HTML.Python.lic")

SDK hazır olduğunda, üç temel işlemi gözden geçirelim.

Adım Adım Oluşturma: Python’da HTML Okuma ve Düzenleme

Python’da bir HTML Belgesi Oluşturun

Boş bir HTMLDocument zaten html, head ve body iskeletini içerir, bu yüzden düğümleri hemen eklemeye başlayabilirsiniz. Öğeler create_element() ile üretilir, metin düğümleri create_text_node() ile oluşturulur ve her ikisi de append_child() ile ağaca eklenir.

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

Her düğüm belge aracılığıyla oluşturulduğu için, ortaya çıkan işaretleme her zaman iyi biçimlendirilir — manuel etiket dengelemesi ve dize birleştirme gerekmez.

Python Kullanarak Mevcut Bir HTML Belgesini Okuma

Bir dosya yolunu HTMLDocument yapıcısına geçirin ve Aspose.HTML dosyayı canlı bir DOM ağacına ayrıştırır. Oradan, bir tarayıcıda yapacağınız gibi sorgulayabilirsiniz: id’ye göre, etiket adına göre veya bir CSS seçicisiyle.

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)

İçeriği ve bir temel URI’yı geçirerek, zaten bellekte bulunan işaretlemeyi de ayrıştırabilirsiniz; bu, HTML bir API yanıtı olarak geldiğinde kullanışlıdır:

content = "<html><body><p>Loaded from a string.</p></body></html>"
document = HTMLDocument(content, ".")

Python’da Mevcut Bir HTML Belgesini Düzenleme

Düzenleme sadece DOM mutasyonu demektir: text_content veya inner_html‘e atama yapın, set_attribute() ile öznitelikleri değiştirin, append_child() ile düğümler ekleyin ve remove_child() ile düğümleri kaldırın. İşiniz bittiğinde sonucu kaydedin.

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

Bu üç işlem temiz bir şekilde birleştirilir: bir kez oluşturun, incelemeniz gerektiğinde okuyun ve içerik değiştikçe sık sık düzenleyin.

Not: Bu kod örneği temel işlevselliği gösterir. Projenizde kullanmadan önce dosya yollarını (created.html, edited.html vb.) gerçek dosya konumlarınıza uygun şekilde güncellediğinizden, tüm gerekli bağımlılıkların doğru şekilde yüklendiğinden emin olun ve geliştirme ortamınızda kapsamlı bir şekilde test edin. Herhangi bir sorunla karşılaşırsanız, lütfen resmi dokümantasyona bakın veya destek ekibi ile iletişime geçin.

Sonuç

Python’da HTML dosyalarını oluşturmak, okumak ve düzenlemek, Aspose.HTML for Python via .NET ile oldukça basit hale gelir. Her işlem, tanıdık bir DOM deyimiyle eşleşir: create_element() ile düğümler oluşturun, get_element_by_id() ve query_selector_all() ile sorgulayın, text_content, inner_html ve set_attribute() aracılığıyla değiştirin, ardından save() ile kalıcı hale getirin. Üretim kullanımı için uygun bir lisans almayı unutmayın; fiyatlandırma detayları ürün sayfasında mevcuttur ve geçici bir lisans geçici lisans sayfası üzerinden alınabilir. SDK elinizde olduğunda, artık herhangi bir Python tabanlı uygulamaya sorunsuz bir şekilde entegre olabilecek sağlam HTML manipülasyon araçları oluşturabilirsiniz.

SSS

  • Python ile Aspose.HTML kullanarak bir HTML dosyası nasıl oluşturabilirim? Boş bir HTMLDocument örneği oluşturun, düğümleri create_element() ve create_text_node() ile oluşturun, append_child() ile ekleyin ve document.save("created.html") çağırın. Yukarıdaki oluşturma örneği tam sıralamayı gösterir.

  • Mevcut bir HTML dosyasının içeriğini nasıl okuyabilirim? Dosya yolunu HTMLDocument constructor’ına geçin, ardından DOM’u get_element_by_id(), get_elements_by_tag_name() veya query_selector_all() ile sorgulayın. Değerler text_content, inner_html ve get_attribute() aracılığıyla elde edilebilir.

  • HTML belgesini nasıl düzenler ve değişiklikleri kaydederim? Belgeyi yükleyin, text_content veya inner_html‘e atayın, set_attribute() ile öznitelikleri değiştirin, append_child() ile düğüm ekleyin ve remove_child() ile kaldırın. Ardından document.save() çağırın, isteğe bağlı olarak bir HTMLSaveOptions örneği geçirin.

  • Daha fazla örnek, dokümantasyon ve desteği nerede bulabilirim? Resmi dokümantasyon ayrıntılı kılavuzlar sunar, API referansı tüm sınıfları ve üyeleri listeler ve topluluğa Aspose.HTML forumu aracılığıyla ulaşılabilir.

Daha Fazla