python - PyAutoGUI - 在错误的浏览器中打开 Chrome 控制台

标签 python python-3.x pyautogui

所以我创建了一个Python脚本,它使用selenium来自动化网页上的一些东西,但我在使用PyAutoGUI模块时遇到了一个小问题。

我用它来将一些数据复制并粘贴到之前打开的 Chrome 控制台中,效果很好。因此,基本上,当我运行脚本时,将打开一个新的 Chrome 浏览器实例,然后我将在该实例的控制台中粘贴一些 .js 脚本,并使用 PyAutoGUI 模块发送“ENTER”键。

问题是,如果我点击其他 Chrome session ,打开控制台的代码 pyautogui.hotkey('ctrl', 'shift', 'i') 将在 session 中执行我目前正在浏览而不是新启动的带有 Selenium 的浏览器。

对于如何根据 Chrome session 设置过滤器有什么建议吗?

代码如下:

driver = Chrome()
driver.get('randomUrl')

def loopProfiles():
  btnKey = driver.find_element_by_xpath('//*[@id="L1"]/div[1]/div[2]/div[4]/div[5]/div/a')
  btnKey.click()

  formEmail = driver.find_element_by_xpath('//*[@id="L1"]/div[2]/div[2]/div/div[2]/form/div/div[1]/input')
  formPass = driver.find_element_by_xpath('//*[@id="L1"]/div[2]/div[2]/div/div[2]/form/div/div[2]/input')
  # Authenticate
  formEmail.send_keys('user')
  formPass.send_keys('pass')

  time.sleep(1)
  btnLogin = driver.find_element_by_xpath('//*[@id="L1"]/div[2]/div[2]/div/div[2]/form/div/div[4]/button[2]')
  btnLogin.click()

  time.sleep(2)
  liveFeed = driver.find_element_by_xpath('//*[@id="L1"]/div[5]/div/div[1]/div/div[1]/div/select/option[3]')
  liveFeed.click()

  time.sleep(5)
  pyautogui.hotkey('ctrl', 'shift', 'j')

  time.sleep(1)
  # copy content from cent-clicks.js file
  jsScript = open('script.js', 'r')
  jsScriptContent = jsScript.read()

  time.sleep(1)
  pyperclip.copy(jsScriptContent)

  jsScript.close()

  time.sleep(1)
  pyautogui.hotkey('ctrl', 'v')
  time.sleep(1)
  pyautogui.hotkey('enter')

我对 Python 非常陌生:)

最佳答案

没关系,我稍微改变了代码,找到了一种直接执行 js 文件的方法,所以一切正常。

def startClicking():
  jsScript = open('clicks.js', 'r')
  jsScriptContent = jsScript.read()
  time.sleep(2)
  driver.execute_script(jsScriptContent)
  time.sleep(1)
  jsScript.close()

关于python - PyAutoGUI - 在错误的浏览器中打开 Chrome 控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54172281/

相关文章:

python - 使用小部件在 jupyter 笔记本中显示 gif

python - 在 PyTorch 中对 CPU(而不是 GPU)深度模型进行基准测试的最佳实践?

python - requests.post() 的 CSRF 验证失败

python - 如何将列表元素转换为 int 并与数字进行比较?

python-3.x - 在 python3 中使用键盘模块时 Num Lock 按钮按下不起作用

python - Numba 对没有输入的函数进行向量化

python - list()连续两次应用于zip对象

python - 我如何判断一个类是否有方法 `__call__` ?

python - PyAutoGUI 截图我唯一的背景(Mac OS)

python - 如何修复 Windows 10 中的 'Pyautogui.mouseUP' 和 mouseDown 问题