对于Selenium来说非常新,实际上这是我在VBA中使用的第一个辅助库。
我正在使用Microsoft Edge的Web Driver,我不知道如何使用发送键,主要是选择页面的整个内容,然后将它们复制到剪贴板。
这是我的
"
Sub Send_Keys_CTRL_A_Ctrl_C()
Dim obj As New WebDriver
obj.Start "edge", ""
obj.Get "http://www.google.com"
Application.Wait (Now + TimeValue("0:00:01"))
obj.FindElementByClass("body").SendKeys (Keys.Control + "a" +
Keys.Control)
End Sub
"
对于大多数人来说,很明显,它在最后一行出错了,这是我从IE驱动程序中复制的,所以它没有延续下去也就不足为奇了。
谢谢。
需要pip install undetected-chromedriver
,但也将在正常的selenium和edgedriver中工作。
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
import undetected_chromedriver as uc
options = uc.ChromeOptions()
options.headless = False
driver = uc.Chrome(options=options)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'body'))).send_keys(Keys.CONTROL, 'a') #press ctrl + a
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'body'))).send_keys(Keys.CONTROL, 'c') #press ctrl + c
或者你也可以只做print(driver.page_source)
如果你想要整个页面的内容。
我不知道VBA,但这是它在python中的工作方式。