QWebview:上传到Youtube返回错误

时间:2012-12-08 14:03:07

标签: python video upload youtube qwebview

这是我的情况: 我创建了一个QWebview,加载了一个Youtube页面并登录。 我选择上传选项(http://www.youtube.com/my_videos_upload),然后选择 要上传的视频。但是,youtube总是返回

“服务器返回了无效回复。请按照以下步骤操作,然后重新上传文件。”

我该如何解决这个问题? 感谢。

编辑:我正在使用的代码是:

import sys
from PyQt4.QtCore import QUrl
from PyQt4.QtGui import QApplication
from PyQt4.QtWebKit import QWebView
from PyQt4.QtNetwork import QNetworkAccessManager
from PyQt4 import QtCore

def fillForm(web, username, password):
    print "Filling in the form"
    doc = web.page().mainFrame().documentElement()

    print "Finding username tag"
    user = doc.findFirst("input[id=Email]")
    print "Finding passwd tag"
    passwd = doc.findFirst("input[id=Passwd]")    

    print "Setting information"
    user.evaluateJavaScript("this.value = '%s'" % username)
    passwd.evaluateJavaScript("this.value = '%s'" % password)    
    button = doc.findFirst("input[id=signIn]")
    button.evaluateJavaScript("this.click()")

def doLogin(web, url, username, password):        
    web.loadFinished.connect(lambda: fillForm(web, username, password))
    web.load(url)
    web.show()

if __name__ == "__main__":
    app = QApplication(sys.argv)
    nam = QNetworkAccessManager()
    web = QWebView()
    web.page().setNetworkAccessManager(nam)
    url = QUrl(r"https://accounts.google.com/Login")
    username = "name"
    password = "pass"
    doLogin(web, url, username, password)
    app.exec_()

1 个答案:

答案 0 :(得分:0)

尝试在web = QWebView()之后添加此内容:

settings = web.settings()
settings.setAttribute(QWebSettings.PluginsEnabled, True)