HTML Tokenizer'ı Python'de Nasıl Kullanılır
Aspose.HTML FOSS içindeki Python tokenizer’ı, işaretlemeyi standart tanımlı token akışına dönüştürür — linter’lar, temizleyici ön geçişleri ve ağaç seviyesinin altındaki işaretlemeyi inceleyen herhangi bir araç için faydalıdır. Bu kılavuz, pip kullanarak kurulumla tokenleştirme giriş noktalarını, token sözlüğünü ve durumları kapsar.
Adım Adım Kılavuz
Adım 1: Paketi Kurun
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Adım 2: Gerekli Sınıfları İçe Aktarın
from aspose_html.tokenizer import Tokenizer, TokenizerStateAdım 3: İşaretlemeyi Tokenleştir
Tokenizer.tokenize() tam girişi işler; Tokenizer.tokenize_fragment() parça kurallarını uygular. Akış, tiplenmiş belirteçleri içerir: StartTagToken ve EndTagToken (özelliklerle), metin için CharacterToken, CommentToken, DoctypeToken ve son EofToken.
Adım 4: Başlangıç Durumunu Kontrol Et
TokenizerState, spesifikasyonun durum makinesini yansıtır. Bağlam duyarlı girdi için — <script> veya <style> içinde görünecek içerik — belirteçlemeden önce Tokenizer.set_state() ile eşleşen başlangıç durumunu ayarlayın.
Adım 5: Karakter Referanslarını Çöz
Adlandırılmış ve sayısal karakter referansları resolve_named_char_ref(), resolve_numeric_char_ref() ve find_named_char_ref_match() aracılığıyla çözülür — tam ad-referans tablosu tarafından desteklenir.
Yaygın Sorunlar ve Çözümler
Script veya style içeriği işaretleme olarak tokenleştirilir. Bağlam için başlangıç durumu yanlıştı; şununla ayarlayın set_state().
Varlıklar çıktıda çözülmemiş gibi görünüyor. Ham metin tüketicileri karakter referansı çözücülerini çalıştırmalıdır; çözüm bu seviyede açıktır.
Parçacık çıktısı tam ayrıştırmadan farklıdır. Parçacık tokenleştirme kuralları kasıtlı olarak farklıdır — şunu kullanın tokenize() tam belgeler için.
Sık Sorulan Sorular
Ağaç oluşturmadan tokenları tüketebilir miyim?
Evet — token akışı, ağaç oluşturulmasından bağımsız, herkese açık bir çıktıdır.
Hangi token türleri mevcuttur?
StartTagToken, EndTagToken, CharacterToken, CommentToken, DoctypeToken ve EofToken.
Tokenleştirici durumları standart olanlar mı?
Evet — TokenizerState spesifikasyonun durum makinesini modellemektedir.