gpt4 book ai didi

C++ Xerces 解析器加载 HTML 并搜索 HTML 元素

转载 作者:行者123 更新时间:2023-11-28 07:48:06 30 4
gpt4 key购买 nike

我正在尝试使用 Xerces DOMDocument C++ 解析器加载 HTML 并搜索特定的 HTML 元素。我很难找到关于如何实现这一点的好例子。我似乎找到的只是解析 XML。有人可以帮忙吗?谢谢。

最佳答案

看看这个:http://xerces.apache.org/xerces-c/program-dom-3.html

还有一个 DOMDocument 示例:

// //创建一个小文档树 //

{
XMLCh tempStr[100];

XMLString::transcode("Range", tempStr, 99);
DOMImplementation* impl = DOMImplementationRegistry::getDOMImplementation(tempStr, 0);

XMLString::transcode("root", tempStr, 99);
DOMDocument* doc = impl->createDocument(0, tempStr, 0);
DOMElement* root = doc->getDocumentElement();

XMLString::transcode("FirstElement", tempStr, 99);
DOMElement* e1 = doc->createElement(tempStr);
root->appendChild(e1);

XMLString::transcode("SecondElement", tempStr, 99);
DOMElement* e2 = doc->createElement(tempStr);
root->appendChild(e2);

XMLString::transcode("aTextNode", tempStr, 99);
DOMText* textNode = doc->createTextNode(tempStr);
e1->appendChild(textNode);

// optionally, call release() to release the resource associated with the range after done
DOMRange* range = doc->createRange();
range->release();

// removedElement is an orphaned node, optionally call release() to release associated resource
DOMElement* removedElement = root->removeChild(e2);
removedElement->release();

// no need to release this returned object which is owned by implementation
XMLString::transcode("*", tempStr, 99);
DOMNodeList* nodeList = doc->getElementsByTagName(tempStr);

// done with the document, must call release() to release the entire document resources
doc->release();
};

...等等。

编辑:

But how do I load HTML into the DOMDocument and search against the html elements? Thats what Im trying to figure out.

XercesDOMParser 解析器;

parser.loadGrammar("grammar.dtd", Grammar::DTDGrammarType);

parser.setValidationScheme(XercesDOMParser::Val_Always);

处理程序处理程序;

parser.setErrorHandler( &handler );

解析器.parse("xmlfile.xml");

关于C++ Xerces 解析器加载 HTML 并搜索 HTML 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14441359/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com