http://blog.csdn.net/v6543210/article/details/19832795
原文提供了一种方法,但这种方法并不好,需要进行递归,容易出错。
我们采取了最简单的方法来进行处理。
QDomDocument doc;
if(!doc.setContent(byteArr, false))//html 存储在byteArr中,QByteArray类型。
return ;
QDomElement root = doc.documentElement();
QDomNodeList nodelist=root.elementsByTagName("A");//调用Qt自带的函数提取全部的链接
if (nodelist.isEmpty())
return;
for (int i=0; i<nodelist.size(); i++)
{
href=nodelist.at(i).toElement().attribute("href");
text=nodelist.at(i).toElement().text());
}
对于这样的html:
<A href="http://127.0.0.1:8080/getfile?md5=dca45b3f7735051a5eac8c158ca2fdb7">qt.conf</A>
这样即可获取链接地址和链接文本。