#include "PageRunner.h" #include #include #include #include #include PageRunner::PageRunner(const QUrl &webpage, QObject *parent) : QObject(parent) { m_page = new QWebPage(this); m_page->settings()->setAttribute(QWebSettings::AutoLoadImages, false); m_page->settings()->setAttribute(QWebSettings::DnsPrefetchEnabled, false); m_page->settings()->setAttribute(QWebSettings::JavaEnabled, false); m_page->settings()->setAttribute(QWebSettings::PluginsEnabled, false); m_page->settings()->setAttribute(QWebSettings::PrivateBrowsingEnabled, true); m_page->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, false); m_page->settings()->setAttribute(QWebSettings::JavascriptCanAccessClipboard, false); m_page->settings()->setAttribute(QWebSettings::OfflineStorageDatabaseEnabled, false); m_page->settings()->setAttribute(QWebSettings::OfflineWebApplicationCacheEnabled, false); m_page->settings()->setAttribute(QWebSettings::LocalStorageEnabled, false); m_page->settings()->setAttribute(QWebSettings::LocalContentCanAccessRemoteUrls, false); m_page->settings()->setAttribute(QWebSettings::LocalContentCanAccessFileUrls, false); m_page->settings()->setAttribute(QWebSettings::XSSAuditingEnabled, true); m_page->settings()->setAttribute(QWebSettings::AcceleratedCompositingEnabled, false); m_page->settings()->setAttribute(QWebSettings::TiledBackingStoreEnabled, false); connect(m_page, SIGNAL(loadFinished(bool)), this, SLOT(loaded())); m_page->mainFrame()->load(webpage); } void PageRunner::loaded() { std::wcout << m_page->mainFrame()->toHtml().toStdWString() << std::endl; qApp->quit(); }