问题
I'm trying to upload a file using QWebPage module of (WebKIt) like this.
<form action="#">
Select a file: <input type="file" id="photos_upload_input" multiplie="">
<input type="submit">
</form>
I try it:
class WebPage(QWebPage):
def __init__(self, parent = None):
QWebPage.__init__(self)
self.overrideUpload = None
def extension(self, extension, option, output):
'''
The behavior of this function is determined by extension .
The option and output values are typically casted to the corresponding types (for example,
ChooseMultipleFilesExtensionOption and ChooseMultipleFilesExtensionReturn for ChooseMultipleFilesExtension )
'''
if self.overrideUpload is None:
return super(WebPage, self).extension(self, extension, option, output)
result = self.overrideUpload
....?
回答1:
Solution:
...
def extension(self, extension, option, output):
if (extension == self.ChooseMultipleFilesExtension):
if self.overrideUpload is None:
return super(WebPage, self).extension(self, extension, option, output)
file_upl = self.overrideUpload
self.overrideUpload = None
output.fileNames = QStringList([file_upl])
return True
return False
...
来源:https://stackoverflow.com/questions/22558873/python-pyqt4-webkit-how-to-set-value-of-inputtype-file-multiple