@ kstruct: Мой предпочтительный способ, вместо написания полноценного браузера с QtWebKit и PyQt4, это использовать уже написанный. Это проект PhantomJS (C ++) или PyPhantomJS (Python). По сути, Python - это QtWebKit и Python.
Они оба безголовые браузеры, которыми вы можете управлять напрямую из JavaScript. Версия Python имеет систему плагинов, которая позволяет вам расширять ядро, чтобы позволить дополнительные функции, если вам нужно.
Вот пример сценария для PyPhantomJS (с плагином saveToFile )
// create new webpage
var page = new WebPage();
// open page, set callback
page.open('url', function(status) {
// exit if page couldn't load
if (status !== 'success') {
console.log('FAIL to load!');
phantom.exit(1);
}
// save page content to file
phantom.saveToFile(page.content, 'myfile.txt');
phantom.exit();
});
Полезные ссылки:
Справочник по API | Как писать плагины