есть ли способ, чтобы загрузить URL и управлять страницы РОМ без рендеринга страницы я хотел бы сделать это проблемно, не показывая страницы это сам в браузереQt: можно ли загружать и управлять веб-страницей dom с помощью QWebKit без отображения страницы?
0
A
ответ
5
Я считаю, вы должны быть в состоянии загрузить веб-страницу используя QNetworkAccessManager и манипулировать его содержимым с помощью QTextDocument; ниже - небольшой пример. Также вы можете использовать класс QWebPage без отображения содержимого страницы. Я также включил его в пример ниже:
void MainWindow::on_pushButton_clicked()
{
// load web page
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://www.google.com")));
}
void MainWindow::replyFinished(QNetworkReply* reply)
{
QByteArray content = reply->readAll();
// process network reply using QTextDocument
QTextDocument page;
page.setHtml(content);
for (QTextBlock block = page.begin(); block != page.end(); block = block.next())
{
// do smth here
qDebug() << block.text();
}
// process network reply using QWebPage
QWebPage webPage;
webPage.mainFrame()->setHtml(content);
QWebElement document = webPage.mainFrame()->documentElement();
QWebElementCollection elements = document.findAll("element_name");
foreach (QWebElement element, elements)
{
// do smth here
qDebug() << element.toPlainText();
}
}
надеюсь, что это помогает, считает
Смежные вопросы
- 1. Qt можно перетаскивать из виджета в Qwebkit?
- 2. Можно ли загружать содержимое страницы без обновления всей страницы
- 3. QWebKit + XPath + HTML. Является ли это возможным?
- 4. Можно ли загружать только часть страницы с помощью colorbox?
- 5. Загрузить файл с помощью qwebkit
- 6. Можно ли загружать видео с помощью перформансов?
- 7. Как получить QWebKit для отображения изображения?
- 8. Можно ли загружать сообщения IMAP без вложений?
- 9. Можно ли загружать данные с помощью javascript
- 10. Можно ли загружать сборки без использования интерфейсов?
- 11. Можно ли управлять раскадрой без его запуска?
- 12. Можно ли загружать и выполнять фрагменты C# с помощью DLR?
- 13. Можно ли перетаскивать и загружать изображения с помощью JQuery?
- 14. Можно ли предварительно загружать и кэшировать видеофайлы без добавления их в DOM?
- 15. Запрос POST с использованием QWebkit в Qt/C++
- 16. Возможно ли управлять элементами HTML без использования DOM API?
- 17. Можно ли вставлять HTML с JS в QwebKit
- 18. Можно ли загружать данные с внешней страницы через AJAX?
- 19. Можно ли загружать и загружать документы на iOS?
- 20. Можно ли управлять имуществом Neo4j?
- 21. QT и QwebKit можно загрузить файл javascript в качестве файла ресурсов и использовать его?
- 22. Можно ли предварительно загружать изображения без кеша с помощью объектов Image?
- 23. Загружать части страницы по запросу без jquery
- 24. Можно ли использовать nhibernate без отображения XML?
- 25. Как управлять QFileDialog с помощью Qt Test?
- 26. Можно ли использовать UILocalNotification без отображения сообщения?
- 27. загружать файлы без обновления страницы
- 28. Можно ли управлять макетом PDF с помощью iText?
- 29. angular.js Можно ли загружать контент сторонних разработчиков с помощью шаблона?
- 30. Qt Проект с символами QWebKit не найден для архитектуры x86_64
Bumping однолетними ответ ... Как бы вы идти о разборе это без QWebPage? Точнее, что, если этот код не был в основном потоке, где вы не можете создать QWebPage? – Ahmed