我正在尝试使用以下代码打开新标签中的链接:
great_per=driver.find_element_by_partial_link_text('Know more Thoughts')
person_link=great_per.get_attribute("href")
person_link.send_keys(Keys.CONTROL, 't')
当我尝试使用find_element
找到对象时,它显示如下错误:
'unicode'对象没有属性'send_keys'
它也显示以下错误
list对象没有属性'send_keys'
那么有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
问题不在于找到元素。您只能在webElement上执行send_keys。在这里,您在元素的字符串(值/属性)上执行send_keys。
person_link=great_per.get_attribute("href")
返回一个值。不是webElement。
如果您想发送密钥,则应在great_per
上进行。因为这是在find_element_by_
great_per=driver.find_element_by_partial_link_text('Know more Thoughts')
person_link.send_keys(Keys.CONTROL, 't')
答案 1 :(得分:0)
要在新标签页中打开链接,您必须使用ActionChains实现,并且可以使用以下代码块:
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
# code block
action = ActionChains(driver)
great_per = driver.find_element_by_partial_link_text("Know more Thoughts")
action.key_down(Keys.CONTROL).click(great_per).key_up(Keys.CONTROL).perform()