首页 > 解决方案 > Qt - 使用网页的 qtNetworkAccesManager 获取所有源代码(HTML 代码)的问题

问题描述

我在使用 QtNetworkAccesManager 时遇到了一些困难。

我想从 URL 中获取源代码。问题是我只得到部分 HTML 源代码,而不是全部。你能告诉我,我错过了什么吗?

void MyClass::importFromWeb()
{
    QUrl url = QUrl("https://doc.qt.io/qt-5/classes.html");
    QNetworkAccessManager* manager  = new QNetworkAccessManager(this);
    QObject::connect(manager, &QNetworkAccessManager::finished, this, &MyClass::onNetworkReply);
    response = manager->get(QNetworkRequest(url));
}

void MyClass::onNetworkReply()
{
   
    QFile* data = new QFile("test.txt");
    data->open(QIODevice::WriteOnly);
    QTextStream write(dat koa);
    write << response->readAll();
    data->close();
}

例如,如果我想获取“https://doc.qt.io/qt-5/classes.html”的源代码,test.txt 的结果大小是 134 ko 但是当我是 html 代码大小在网站上做一个“ctrl+s”是192 ko。所以缺少一些源代码,但是什么以及为什么?谢谢你的帮助。

标签: htmlqthttp

解决方案


推荐阅读