请提供有关如何使用Python selenium Chrome Webdriver在新标签页中打开链接的建议。所以,我不是问如何简单地打开一个新标签,也不是如何用Firefox打开一个新标签。
这个在新标签页中打开同一页面:
first_link.send_keys(Keys.CONTROL + Keys.ENTER)
这也是:
first_link.send_keys(Keys.CONTROL + Keys.ENTER)
alecxe对this question的回答不起作用,因为我无法获得链接指向的网址。我需要简单地模拟鼠标右键单击> "在新标签页中打开链接"。
问题原来是网站https://www.pagesjaunes.fr本身。由于某种原因,它在搜索结果中为其条目提供了错误的URL。例如对于元素:
//*[@id="bi-bloc-0437413413085060110003C0001"]/div[2]/header/div[1]/div/h2/a[2]
因此,当尝试通过Selenium或请求访问此元素的链接时,它会重定向到搜索结果本身的页面。鉴于此,我决定使用不同的方法来解决问题。
因此,我决定放弃在新标签中打开链接的方法。
答案 0 :(得分:0)
以下对我很有用
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get("http://tarunlalwani.com/post/")
action = ActionChains(driver)
elem = driver.find_element_by_link_text("How To Debug Nginx Reverse Proxy Issues")
action\
.move_to_element(elem)\
.key_down(Keys.SHIFT)\
.click(elem)\
.key_up(Keys.SHIFT)\
.perform()
driver.quit()
答案 1 :(得分:0)
试试这个:
driver.find_element_by_tag_name("body").send_keys(Keys.COMMAND + 't')
答案 2 :(得分:-1)
您首先需要“点安装键盘”
keyboard.press("ctrl+t")