<p>jen@berns给出了可行的解决方案。但没有必要在搜索中提供公司的确切名称。当你输入一个不精确的名字时,会弹出一个下拉列表。在</p>
<p><a href="https://i.stack.imgur.com/VYxPA.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/VYxPA.png" alt="enter image description here"/></a></p>
<p>我观察到,除非出现此下拉列表,否则enter键不起作用。您可以通过访问站点,粘贴名称并尽快按enter键来检查。什么也没发生。在</p>
<p>您也可以等待此下拉列表可见,然后发送enter钥匙。这个也能完美工作。请注意,如果存在多个项目,则最终将选择下拉列表中的第一个项目。在</p>
<pre><code>from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Firefox()
driver.get('http://www.ratestar.in/')
inputElement = driver.find_element_by_css_selector("#txtStock")
inputElement.send_keys('GM Breweries')
drop_down=driver.find_element_by_css_selector("#listPlacementStock")
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '#listPlacementStock:not([style*="display: none"])')))
inputElement.send_keys(Keys.ENTER)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="CompanyLink"]')))
source = driver.page_source
soup = BeautifulSoup(source,'html.parser')
print(soup)
</code></pre>