57 lines
2.8 KiB
Cython
57 lines
2.8 KiB
Cython
|
from libc.string cimport const_char
|
||
|
|
||
|
from lxml.includes.tree cimport xmlDoc
|
||
|
from lxml.includes.tree cimport xmlInputReadCallback, xmlInputCloseCallback
|
||
|
from lxml.includes.xmlparser cimport xmlParserCtxt, xmlSAXHandler, xmlSAXHandlerV1
|
||
|
|
||
|
cdef extern from "libxml/HTMLparser.h":
|
||
|
ctypedef enum htmlParserOption:
|
||
|
HTML_PARSE_NOERROR # suppress error reports
|
||
|
HTML_PARSE_NOWARNING # suppress warning reports
|
||
|
HTML_PARSE_PEDANTIC # pedantic error reporting
|
||
|
HTML_PARSE_NOBLANKS # remove blank nodes
|
||
|
HTML_PARSE_NONET # Forbid network access
|
||
|
# libxml2 2.6.21+ only:
|
||
|
HTML_PARSE_RECOVER # Relaxed parsing
|
||
|
HTML_PARSE_COMPACT # compact small text nodes
|
||
|
# libxml2 2.7.7+ only:
|
||
|
HTML_PARSE_NOIMPLIED # Do not add implied html/body... elements
|
||
|
# libxml2 2.7.8+ only:
|
||
|
HTML_PARSE_NODEFDTD # do not default a doctype if not found
|
||
|
# libxml2 2.8.0+ only:
|
||
|
XML_PARSE_IGNORE_ENC # ignore internal document encoding hint
|
||
|
|
||
|
xmlSAXHandlerV1 htmlDefaultSAXHandler
|
||
|
|
||
|
cdef xmlParserCtxt* htmlCreateMemoryParserCtxt(
|
||
|
char* buffer, int size) nogil
|
||
|
cdef xmlParserCtxt* htmlCreateFileParserCtxt(
|
||
|
char* filename, char* encoding) nogil
|
||
|
cdef xmlParserCtxt* htmlCreatePushParserCtxt(xmlSAXHandler* sax,
|
||
|
void* user_data,
|
||
|
char* chunk, int size,
|
||
|
char* filename, int enc) nogil
|
||
|
cdef void htmlFreeParserCtxt(xmlParserCtxt* ctxt) nogil
|
||
|
cdef void htmlCtxtReset(xmlParserCtxt* ctxt) nogil
|
||
|
cdef int htmlCtxtUseOptions(xmlParserCtxt* ctxt, int options) nogil
|
||
|
cdef int htmlParseDocument(xmlParserCtxt* ctxt) nogil
|
||
|
cdef int htmlParseChunk(xmlParserCtxt* ctxt,
|
||
|
char* chunk, int size, int terminate) nogil
|
||
|
|
||
|
cdef xmlDoc* htmlCtxtReadFile(xmlParserCtxt* ctxt,
|
||
|
char* filename, const_char* encoding,
|
||
|
int options) nogil
|
||
|
cdef xmlDoc* htmlCtxtReadDoc(xmlParserCtxt* ctxt,
|
||
|
char* buffer, char* URL, const_char* encoding,
|
||
|
int options) nogil
|
||
|
cdef xmlDoc* htmlCtxtReadIO(xmlParserCtxt* ctxt,
|
||
|
xmlInputReadCallback ioread,
|
||
|
xmlInputCloseCallback ioclose,
|
||
|
void* ioctx,
|
||
|
char* URL, const_char* encoding,
|
||
|
int options) nogil
|
||
|
cdef xmlDoc* htmlCtxtReadMemory(xmlParserCtxt* ctxt,
|
||
|
char* buffer, int size,
|
||
|
char* filename, const_char* encoding,
|
||
|
int options) nogil
|