【问题标题】:Selenium search bar is not showing any suggestionsSelenium 搜索栏未显示任何建议
【发布时间】:2020-04-24 09:39:51
【问题描述】:

我目前正在研究一个可以自动交易股票的项目。在交易网站上登录后,selenium 的想法是在搜索栏中插入键:“FB”。如果您对要查找的股票执行此手动建议,则会弹出。但令我惊讶的是,一旦硒控制它们,它们就不会显示出来。如果有人想自己尝试该程序,我会给出完整的代码,只需更改浏览器的路径即可!该帐户是假的,所以不要担心... :)

代码:

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


browser = webdriver.Chrome('/Users/larskvist/downloads/chromedriver')
browser.get('https://www.forex.com/en-uk/account-login/')

username_elem = browser.find_element_by_name('Username')
username_elem.send_keys('kebababdulaziz@gmail.com')

password_elem = browser.find_element_by_name('Password')
password_elem.send_keys('KEbababdulaziz')
password_elem.send_keys(Keys.ENTER)

search_elem = WebDriverWait(browser, 20).until(EC.element_to_be_clickable(
    (By.CSS_SELECTOR, "input.market-search__search-input")))
search_elem.send_keys('FB')

提前致谢!

【问题讨论】:

    标签: python selenium web-scraping automation


    【解决方案1】:

    你需要在输入“FB”后点击这个输入:

    ...
    search_elem = WebDriverWait(browser, 20).until(EC.element_to_be_clickable(
        (By.CSS_SELECTOR, "input.market-search__search-input")))
    search_elem.send_keys("FB")
    time.sleep(5)
    search_elem.click()
    

    希望对你有帮助!

    【讨论】:

      【解决方案2】:

      识别元素后,首先单击该元素,然后提供 send_keys()

      browser = webdriver.Chrome('/Users/larskvist/downloads/chromedriver')
      browser.get('https://www.forex.com/en-uk/account-login/')
      username_elem = browser.find_element_by_name('Username')
      username_elem.send_keys('kebababdulaziz@gmail.com')
      password_elem = browser.find_element_by_name('Password')
      password_elem.send_keys('KEbababdulaziz')
      password_elem.send_keys(Keys.ENTER)
      
      search_elem = WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input.market-search__search-input")))
      search_elem.click()
      search_elem.send_keys('FB')
      

      浏览器快照:

      【讨论】:

      • 非常感谢,非常有帮助!我想我是有道理的,搜索结果仅在您单击它时才显示...有关如何获得有关 Selenium 的这些知识的任何建议?
      • @LarsKvist:当我点击输入字段时,我只是手动检查它打开了弹出窗口,所以我在 selenium 中执行相同的步骤。首先单击,然后在输入字段中输入数据。同时自动化我们应该始终关注不同试验的用户体验。
      • 复制那个大师!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多