所以我创建了一个 Python 脚本,它使用 selenium 来自动化网页上的一些东西,我在 PyAutoGUI 模块上遇到了一个小问题。
我正在使用它将一些数据复制并粘贴到之前打开的 Chrome 控制台中,效果很好。所以基本上当我运行脚本时,将打开一个新的 Chrome 浏览器实例,然后我将在该实例的控制台中粘贴一些 .js 脚本,并使用 PyAutoGUI 模块发送“ENTER”键。
问题是,如果我点击其他一些 Chrome 会话,打开控制台的代码pyautogui.hotkey('ctrl', 'shift', 'i')将在我当前浏览的会话中执行,而不是在新启动的 selenium 会话中执行。
关于如何根据 Chrome 会话设置过滤器的任何建议?
这是代码:
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 非常陌生:)
相关分类