python 使用 selenium webdriver mouser

python using selenium webdriver mouser

我正在尝试打开 Mouser 网站并使用搜索栏发送一些数据。这是代码示例,但我无法获得正确的 CSS 选择器。谢谢。

import time
from openpyxl import load_workbook
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(executable_path='C:/Users/amuri/AppData/Local/Microsoft/WindowsApps/PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0/site-packages/chromedriver.exe')
driver.implicitly_wait(1)

url ='https://www.mouser.com/'
driver.get(url)
print(driver.title)
wait = WebDriverWait(driver, timeout=1)
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#as-input-066 .form-control")))
elem = driver.find_element_by_css_selector("#as-input-066 .form-control")
elem.click()
elem.send_keys("myString")

尝试以下 css:

.form-control.headerSearchBox.search-input.js-search-autosuggest.as-input

xpath 更短:

//input[contains(@id,'as-input')]

解释:它查看包含 as-input

id

再提一个建议: 变化

wait = WebDriverWait(driver, timeout=1)

wait = WebDriverWait(driver, timeout=15)

1 秒的超时时间太短。至少应为 10。