筱筱兔宝宝 2021-12-09 15:02 采纳率: 0%
浏览 80
已结题

QMainWindow加载QWebEngineView同时运行pyautogui页面无法响应

问题遇到的现象和发生背景

用PyQt5编写一个自动化点击加载网页的脚本,将网页通过QWebEngineView加载到mainwindow下,同时在mainwindow上布局一些操作按钮来进行相应的任务操作,通过pyautogui模拟鼠标键盘的形式

问题相关代码,请勿粘贴截图
import pyautogui,sys
from PyQt5.QtCore import QUrl, Qt
from PyQt5.QtWidgets import QMainWindow, QApplication, QPushButton
from PyQt5.QtWebEngineWidgets import QWebEngineView
 
class MainWindow(QMainWindow):
    def __init__(self):
        super(QMainWindow, self).__init__()
        self.initUI()
 
    def initUI(self):
        # 主窗口设置
        self.setWindowTitle('自动化')
        self.setGeometry(0, 0, 550, 700)
 
        # 网页内嵌设置
        self.crazyChiefMain = QWebEngineView(self)
        self.crazyChiefMain.setGeometry(0, 0, 438, 700)
        self.crazyChiefMain.load(QUrl(r"https://www.baidu.com"))
 
        # 提交开始按钮
        self.bt_start = QPushButton('开始点击', self)
        self.bt_start.setGeometry(450,50,90, 30)
        self.bt_start.clicked.connect(self.go)
 
    def go(self):
        pyautogui.click(x=133, y=347, duration=0.5)
        pyautogui.click(x=133, y=387, duration=0.5)
        pyautogui.click(x=133, y=417, duration=0.5)
 
if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = MainWindow()
    win.show()
    sys.exit(app.exec_())

运行结果及报错内容

运行时发现当鼠标模拟任务开始,所加载的网页是处于静止无响应状态的,无法对其进行操作,待模拟任务结束,又恢复正常页面

我的解答思路和尝试过的方法

尝试过用多线程、多进程好像也不能对加载的页面进行操作,但是如果是两个独立的py脚本,分开运行是没有问题的

我想要达到的结果

用PyQt5通过UI设计,增加QWebEngineView加载网页,在同一mainwindow下布局一些操作按钮展示出来,用pyautogui模拟鼠标对所加载的页面进行相应的自动化操作

  • 写回答

3条回答 默认 最新

  • 有问必答小助手 2021-12-10 17:35
    关注

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月21日
  • 已采纳回答 12月13日
  • 创建了问题 12月9日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效