我正在尝试在搜索栏中输入,如Sprouts中的图片所示。我尝试了许多不同的迭代,但无法在搜索栏中输入。我做错了什么?
代码:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
options = webdriver.ChromeOptions()
website = webdriver.Chrome(executable_path='/Users/myPath/chromedriver',options = options)
sprouts = {"url" : "https://shop.sprouts.com/"}
website.get(sprouts['url'])
search_bar = website.find_element(By.CSS_SELECTOR,"css-4hd4ug")
search_bar.send_keys("bananas")
search_bar.send_keys(Keys.RETURN)
2条答案
按热度按时间rjee0c151#
首先,选择类的语法是在类名前使用点(.),因此:
其次,有多个该类,因此,我将使用直接从chrome
#sticky-react-header > div > div.css-q1n3l > div.css-c1jgn7 > form > div > input
复制的CSS选择器。第三,元素显示需要时间,因此应使用
presence_of_element_located
。请参见:* 一个月一次 *使用您的代码时,应将其重构为:
qv7cva1a2#
您可以使用下面的XPATH在搜索栏中输入值:
或者使用下面的CSS_SELECTOR: