【问题标题】:pyqt5 qwebenginview doesn't autoplay youtube videospyqt5 qwebenginview 不会自动播放 youtube 视频
【发布时间】:2019-09-26 14:42:41
【问题描述】:

我正在尝试使用 Qwebengineview 查看 youtube 视频列表,但浏览器不会自动播放视频,我使用的是 PyQt5 5.13.1 Python 3.6

这是一个示例代码

from PyQt5.QtCore import QUrl
from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEngineProfile, QWebEnginePage
from PyQt5.QtWidgets import QApplication

if __name__ == '__main__':
    import sys

    app = QApplication(sys.argv)
    webview = QWebEngineView()
    profile = QWebEngineProfile("my_profile", webview)
    profile.defaultProfile().setPersistentCookiesPolicy(QWebEngineProfile.ForcePersistentCookies)
    webpage = QWebEnginePage(profile, webview)
    webview.setPage(webpage)
    webview.load(QUrl("https://www.youtube.com/watch?v=VzIVI2fsRb0"))
    webview.show()
    sys.exit(app.exec_())

【问题讨论】:

    标签: python python-3.x pyqt5 qwebengineview


    【解决方案1】:

    我已经找到了使用 QWebEngineSettings 的解决方案,这是一个完整的工作示例,以防有人需要它

    from PyQt5.QtCore import QUrl
    from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEngineProfile, QWebEnginePage, QWebEngineSettings
    from PyQt5.QtWidgets import QApplication
    import time
    
    if __name__ == '__main__':
        import sys
    
        app = QApplication(sys.argv)
        webview = QWebEngineView()
        profile = QWebEngineProfile("my_profile", webview)
        profile.defaultProfile().setPersistentCookiesPolicy(QWebEngineProfile.ForcePersistentCookies)
        webpage = QWebEnginePage(profile, webview)
        webpage.settings().setAttribute(QWebEngineSettings.PlaybackRequiresUserGesture, False)
    
        webview.setPage(webpage)
        webview.load(QUrl("https://www.youtube.com/watch?v=aKCNrkERJ3E"))
        webview.show()
    
        sys.exit(app.exec_())
    

    【讨论】:

      猜你喜欢
      • 2013-07-21
      • 1970-01-01
      • 1970-01-01
      • 2016-09-30
      • 2015-04-11
      • 2023-03-05
      • 1970-01-01
      • 2012-12-26
      • 2021-07-24
      相关资源
      最近更新 更多