# 输入商品名称 goods_name = f"{self.PREFIX_NUM}"将其改为模糊搜索
时间: 2024-03-24 12:38:40 浏览: 78
如果要实现模糊搜索,可以使用模糊匹配的方式来定位元素。例如,使用 XPath 的 `contains` 函数来匹配包含指定文本的元素。具体实现方式可以参考下面的代码示例:
```python
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 等待搜索框出现
wait = WebDriverWait(driver, 10)
search_box = wait.until(EC.presence_of_element_located((By.ID, "search-box")))
# 输入搜索关键字
search_keyword = "商品名称"
search_box.send_keys(search_keyword)
# 点击搜索按钮
search_button = driver.find_element_by_xpath("//button[contains(text(), '搜索')]")
search_button.click()
# 获取搜索结果
search_results = driver.find_elements_by_xpath("//div[contains(@class, 'search-result-item')]")
for result in search_results:
# 处理搜索结果
result_text = result.text
print(result_text)
```
在上面的代码中,`By.ID` 用于指定搜索框的 ID 属性,`EC.presence_of_element_located` 用于等待搜索框元素出现。使用 `search_box.send_keys` 方法向搜索框中输入关键字,然后通过 XPath 的 `contains` 函数来匹配包含指定文本的元素,使用 `driver.find_elements_by_xpath` 方法获取所有匹配的元素。最后可以遍历所有搜索结果,并对其进行处理。
阅读全文