Mô-đun này định nghĩa một lớp
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 dùng làm cơ sở để phân tích cú pháp các tệp văn bản được định dạng bằng HTML [Ngôn ngữ đánh dấu siêu văn bản] và XHTMLlớp html. trình phân tích cú pháp. HTMLParser[* , convert_charrefs=Đúng]¶
Tạo một phiên bản trình phân tích cú pháp có thể phân tích cú pháp đánh dấu không hợp lệ
Nếu convert_charrefs là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2 [mặc định], tất cả tham chiếu ký tự [ngoại trừ tham chiếu trong phần tử
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html3/
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html4] sẽ tự động được chuyển đổi thành ký tự Unicode tương ứng
Phiên bản
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 được cung cấp dữ liệu HTML và gọi các phương thức xử lý khi bắt gặp thẻ bắt đầu, thẻ kết thúc, văn bản, nhận xét và các thành phần đánh dấu khác. Người dùng nên phân lớp
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 và ghi đè các phương thức của nó để thực hiện hành vi mong muốn
Trình phân tích cú pháp này không kiểm tra xem thẻ kết thúc có khớp với thẻ bắt đầu hay không gọi trình xử lý thẻ kết thúc cho các phần tử được đóng hoàn toàn bằng cách đóng phần tử bên ngoài
Đã thay đổi trong phiên bản 3. 4. đã thêm đối số từ khóa convert_charrefs.
Đã thay đổi trong phiên bản 3. 5. Giá trị mặc định cho đối số convert_charrefs hiện là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2.
Ứng dụng trình phân tích cú pháp HTML mẫu¶
Như một ví dụ cơ bản, dưới đây là một trình phân tích cú pháp HTML đơn giản sử dụng lớp
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 để in ra các thẻ bắt đầu, thẻ kết thúc và dữ liệu khi chúng gặp phải
________số 8
Đầu ra sau đó sẽ là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html
Encountered a start tag: html
Encountered a start tag: head
Encountered a start tag: title
Encountered some data : Test
Encountered an end tag : title
Encountered an end tag : head
Encountered a start tag: body
Encountered a start tag: h1
Encountered some data : Parse me!
Encountered an end tag : h1
Encountered an end tag : body
Encountered an end tag : html
1 Phương pháp¶
Phiên bản
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 có các phương pháp sauHTMLParser. nguồn cấp dữ liệu[dữ liệu] ¶
Cung cấp một số văn bản cho trình phân tích cú pháp. Nó được xử lý trong chừng mực nó bao gồm các yếu tố hoàn chỉnh; . dữ liệu phải là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html22HTMLParser. đóng[] ¶
Buộc xử lý tất cả dữ liệu được lưu vào bộ đệm như thể nó được theo sau bởi dấu cuối tệp. Phương thức này có thể được định nghĩa lại bởi một lớp dẫn xuất để xác định quá trình xử lý bổ sung ở cuối đầu vào, nhưng phiên bản được định nghĩa lại phải luôn gọi phương thức của lớp cơ sở
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html21HTMLParser. đặt lại[] ¶
Đặt lại phiên bản. Mất tất cả dữ liệu chưa được xử lý. Điều này được gọi ngầm tại thời điểm khởi tạo
HTMLParser. getpos[] ¶Trả về số dòng hiện tại và phần bù
HTMLParser. get_starttag_text[] ¶Trả lại văn bản của thẻ bắt đầu được mở gần đây nhất. Điều này thường không cần thiết cho quá trình xử lý có cấu trúc, nhưng có thể hữu ích trong việc xử lý HTML “khi được triển khai” hoặc để tạo lại đầu vào với những thay đổi tối thiểu [có thể giữ nguyên khoảng trắng giữa các thuộc tính, v.v. ]
Các phương thức sau đây được gọi khi gặp dữ liệu hoặc các phần tử đánh dấu và chúng có nghĩa là sẽ bị ghi đè trong một lớp con. Việc triển khai lớp cơ sở không làm gì cả [ngoại trừ
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html25]HTMLParser. handle_starttag[tag , attrs]¶
Phương thức này được gọi để xử lý thẻ bắt đầu của một phần tử [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html26]
Đối số thẻ là tên của thẻ được chuyển thành chữ thường. Đối số attrs là danh sách gồm các cặp
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html27 chứa các thuộc tính được tìm thấy bên trong dấu ngoặc 128 của thẻ. Tên sẽ được dịch sang chữ thường và dấu ngoặc kép trong giá trị đã bị xóa, đồng thời tham chiếu ký tự và thực thể đã được thay thế
Chẳng hạn, đối với thẻ
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html29, phương thức này sẽ được gọi là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html10
Tất cả các tham chiếu thực thể từ
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html11 được thay thế trong các giá trị thuộc tínhHTMLParser. handle_endtag[tag] ¶
Phương thức này được gọi để xử lý thẻ kết thúc của một phần tử [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html12]
Đối số thẻ là tên của thẻ được chuyển thành chữ thường
HTMLParser. handle_startendtag[tag , attrs]¶Tương tự như
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html13, nhưng được gọi khi trình phân tích cú pháp gặp một thẻ rỗng kiểu XHTML [
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html14]. Phương thức này có thể bị ghi đè bởi các lớp con yêu cầu thông tin từ vựng cụ thể này; HTMLParser. handle_data[dữ liệu] ¶
Phương thức này được gọi để xử lý dữ liệu tùy ý [e. g. các nút văn bản và nội dung của
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html17 và
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html18]
Phương thức này được gọi để xử lý một tham chiếu ký tự được đặt tên có dạng
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html19 [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html10], trong đó tên là tham chiếu thực thể chung [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html11]. Phương thức này không bao giờ được gọi nếu convert_charrefs là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2HTMLParser. handle_charref[tên] ¶
Phương thức này được gọi để xử lý các tham chiếu ký tự số thập phân và thập lục phân có dạng
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html13 và
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html14. Ví dụ: số thập phân tương đương với
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html10 là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html16, trong khi số thập lục phân là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html17; . Phương thức này không bao giờ được gọi nếu convert_charrefs là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2HTMLParser. handle_comment[dữ liệu] ¶
Phương thức này được gọi khi gặp một bình luận [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html21]
Ví dụ: nhận xét
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html22 sẽ khiến phương thức này được gọi với đối số
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html23
Nội dung của các nhận xét có điều kiện [condcom] của Internet Explorer cũng sẽ được gửi đến phương thức này, vì vậy, đối với
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html24, phương thức này sẽ nhận được
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html25HTMLParser. handle_decl[decl] ¶
Phương thức này được gọi để xử lý một khai báo doctype HTML [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html26]
Tham số boong sẽ là toàn bộ nội dung khai báo bên trong đánh dấu ________ 427 [e. g.
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html28]HTMLParser. handle_pi[dữ liệu] ¶
Phương thức được gọi khi gặp hướng dẫn xử lý. Tham số dữ liệu sẽ chứa toàn bộ hướng dẫn xử lý. Ví dụ: đối với hướng dẫn xử lý
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html29, phương thức này sẽ được gọi là
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html10. Nó dự định sẽ bị ghi đè bởi một lớp dẫn xuất;
Ghi chú
Lớp
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1 sử dụng các quy tắc cú pháp SGML để xử lý các hướng dẫn. Hướng dẫn xử lý XHTML sử dụng ____ _ _ _ _ ở _ _ _ _ _ _ _ _ _ _ _ _ ở _ _ _ sau _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _HTMLParser. unknown_decl[dữ liệu] ¶
Phương thức này được gọi khi trình phân tích cú pháp đọc một khai báo không được nhận dạng
Tham số dữ liệu sẽ là toàn bộ nội dung khai báo bên trong đánh dấu
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html14. Đôi khi nó hữu ích khi bị ghi đè bởi một lớp dẫn xuất. Việc triển khai lớp cơ sở không làm gì cả
Ví dụ¶
Lớp sau triển khai trình phân tích cú pháp sẽ được sử dụng để minh họa thêm các ví dụ
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2
Phân tích cú pháp một loại tài liệu
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1
Phân tích cú pháp một phần tử với một vài thuộc tính và tiêu đề
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1
Nội dung của các phần tử
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html3 và
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html4 được trả về nguyên trạng mà không cần phân tích cú pháp thêm
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2
Phân tích cú pháp nhận xét
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html1
Phân tích các tham chiếu ký tự có tên và số và chuyển đổi chúng thành ký tự chính xác [lưu ý. 3 tài liệu tham khảo này đều tương đương với
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html17]
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html4
Việc cung cấp các đoạn không hoàn chỉnh cho
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html18 hoạt động, nhưng
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html19 có thể được gọi nhiều lần [trừ khi convert_charrefs được đặt thành
Encountered a start tag: html Encountered a start tag: head Encountered a start tag: title Encountered some data : Test Encountered an end tag : title Encountered an end tag : head Encountered a start tag: body Encountered a start tag: h1 Encountered some data : Parse me! Encountered an end tag : h1 Encountered an end tag : body Encountered an end tag : html2]