1

例如,我需要解析 html 页面并将所有文本写入 .txt 文件

  <!DOCTYPE html>
  <html>
  <body>

  <h1>My First Heading</h1>

  <p>My first paragraph.</p>
  <p>My second paragraph.</p>

</body>
</html>

所以我需要解析我需要写
我的第一段的 p 标签。我的第二段。

到外部文件

任何想法,如果我可以使用 QtWebkit 在 Qt 中做到这一点

我感谢您的帮助

4

1 回答 1

0

我认为,如果您真正尝试某事并发布您的代码作为起点,那总是最好的。但是我工作很无聊,所以就这样吧......

这是一些伪代码:

// To request data from the interwebs.
QNetworkRequest* request = new QNetworkRequest("http://www.asdf.com");
QNetworkAccessManager* networkMgr = new QNetworkAccessManager();
QNetworkReply* reply = networkMgr->get(request);

// Set up signals & slots (Qt4 style)
QObject::connect(reply, SIGNAL(readyRead()), this, SLOT(readyRead()));
QObject::connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(error(QNetworkReply::NetworkError)));

稍后,当您获得有效负载时,您可以读取数据并将其输入您想要的任何 Qt Xml 解析器(QXmlStreamReader 和其他!):

void HttpTest::readyRead()
{
  QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());

  if(reply)
  {
    if(reply->error() == QNetworkReply::NoError)
    {

    }
    else
    {
      QString html = reply->readAll();
      QXmlStreamReader reader(&html);
      // Parse your xml stuff - search for your <p> node.
      // ...

Qt 文档示例

stackoverflow 有很多

    }
  }
}
于 2013-07-12T18:44:41.747 回答