Для изменения переменных POST в qtwebkit необходимо изменить или заменить исходящие данные в createRequest(...). Как создать свой <PyQt4.QtCore.QIODevice object at 0x03BA...>
не QFile или QByteArray. Точно объект QIODevice! Это необходимо для создания записываемого устройства. Или как преобразовать <PyQt4.QtCore.QBuffer object at 0x03BA...>
в <PyQt4.QtCore.QIODevice object at 0x03BA...>
.
Это устройство чаще всего используется в QNetworkAccessManager:
https://qt.gitorious.org/qt/webkit/source/7647fdaf9a4b526581e02fbd0e87c41a96cbfebb:src/network/access/qnetworkaccessmanager.cpp#L941
QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Operation op,
const QNetworkRequest &req,
QIODevice *outgoingData)
...
ОБНОВЛЕНИЕ: после вызова этого метода:
def createRequest(manager, operation, request, data):
if data.size() > 0:
post_body = "q=hello"
output = QtCore.QByteArray()
buffer = QtCore.QBuffer(output)
buffer.open(QtCore.QIODevice.ReadWrite)
buffer.writeData(post_body)
data = buffer
reply = QNetworkAccessManager.createRequest(manager, operation, request, data)
return reply
скрипт зависает...