我正在尝试使用QtWebKit模块将照片上传到vk.com 。我面临的问题是无法正确填充' 值。这是我使用的一些相关代码:input(type="file")
def upload():
print 'uploading...'
photoInput = web.page().mainFrame().documentElement().findFirst('input[id="photos_upload_input"]')
assert photoInput, 'No input found'
photoInput.setAttribute('value', '/Users/elmigranto/Downloads/stuff.png')
print photoInput.evaluateJavaScript('return this.value;').toString()
需要注意的是,由于浏览器安全策略的原因,Javascript 无法填充文件输入的值。但是,应该可以使用 Qt API,更具体地说,方法。这就是我所做的......没有任何效果(嗯,返回预期结果,但返回空字符串,输入的处理程序也没有被触发)。QWebElement
::
setAttribute()
photoInput.attribute('value')
photoInput.evaluateJavaScript('return this.value;').toString()
onchange
设置其他属性是没有问题的,例如,就像一个魅力。QWebElement
::
addClass()
任何帮助都会非常棒。
谢谢。