python - 如何使用 Selenium 搜索、向下箭头并按 Enter
问题描述
我正在尝试搜索公司,向下箭头并单击 inhersight.com 上的输入
我有以下代码,但它似乎不起作用:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver.get("https://www.inhersight.com/companies")
elem = driver.find_element_by_class_name("open-search.small-hide.margin-right-20.icon-36.icon-search.reverse.cursor-pointer").click()
elem.send_keys("Apple")
elem.send_keys(Keys.ARROW_DOWN)
它似乎无法通过类名定位和找到元素。我已经尝试了很多东西,但它仍然不起作用......我迷路了
解决方案
要搜索公司并单击输入而inhersight.com
不是元素是自动建议,因此arrow down
您需要诱导WebDriverWait以使所需元素可单击,您可以使用以下解决方案:
代码块:
from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC options = Options() options.add_argument('start-maximized') options.add_argument('disable-infobars') options.add_argument('--disable-extensions') driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\WebDrivers\chromedriver.exe') driver.get("https://www.inhersight.com/companies") WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".open-search.small-hide.margin-right-20.icon-36.icon-search.reverse.cursor-pointer"))).click() WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@placeholder='Search women-rated companies']"))).send_keys("Apple") WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//li[contains(@class,'select2-highlighted')]/div[@class='select2-result-label']/div[@class='weight-medium']"))).click()
推荐阅读
- asp.net-core - 为托管的 blazor 实现进度条
- c++ - 字符串文字中换行符的换行计数器 [更新]
- reactjs - React/redux combineReducers 问题
- youtube-api - youtube iframe api没有触发事件
- javascript - nginx网站启动缓慢
- laravel - 无法访问 Laravel Homestead。如何更改 SSH 密钥?
- docker - 使用 .NET 客户端在 ElasticSearch 上定义索引模板
- node.js - 未知错误:Chrome 无法启动:尝试使用 mocha 测试电子光谱仪时异常退出
- c# - 使用 Animator IK 如何检测玩家手何时完成向前移动?
- r - 基于主角的条件重塑