Python 硒和蟒蛇3:在www.rottentomatoes.com上选择搜索框

Python 硒和蟒蛇3:在www.rottentomatoes.com上选择搜索框,python,python-3.x,selenium,selenium-webdriver,Python,Python 3.x,Selenium,Selenium Webdriver,我有一个电影列表,我想从www.rotterntomatos.com上获得评论,但我遇到了一个障碍 我想要的是能够将每部电影的标题传递到网站搜索框,然后处理结果以获得我想要的评论 目前,我无法超越搜索阶段,因为我无法成功找到搜索框 我的代码如下所示: from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriv

我有一个电影列表,我想从www.rotterntomatos.com上获得评论,但我遇到了一个障碍

我想要的是能够将每部电影的标题传递到网站搜索框,然后处理结果以获得我想要的评论

目前,我无法超越搜索阶段,因为我无法成功找到搜索框

我的代码如下所示:

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

browser = webdriver.Chrome('/home/zona/chromedriver')
url = 'https://www.rottentomatoes.com/'
browser.get(url)
time.sleep(10)

try:
    element = WebdriverWait(browser, 10).until(
    EC.presence_of_element_located((By.XPATH,'//body//input[@name="search"]')))
    element =  browser.find_element_by_xpath('//body//input[@name="search"]')
    element.clear()
    element.send_keys("avatar")
except:
    print("cound not find search box")

time.sleep(5)
browser.quit()
我得到输出: 找不到搜索框

有人能帮我找出我做错了什么吗?
如果这太基本,请道歉,我对编程和python都是新手。

这只是区分大小写的问题

您使用了
WebdriverWait
(小写
d
)而不是
WebdriverWait

注意:使用
trackback
模块打印堆栈跟踪以了解异常详细信息

请尝试以下代码:

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

browser = webdriver.Chrome(`/home/zona/chromedriver`)
url = 'https://www.rottentomatoes.com/'
browser.get(url)
time.sleep(5)

try:
    element = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.XPATH,'//body//input[@name="search"]')))
    # element =  browser.find_element_by_xpath('//body//input[@name="search"]')
    element.clear()
    element.send_keys("avatar")
except:
    traceback.print_exc()
    print("cound not find search box")

time.sleep(5)
browser.quit()

您是否也可以共享准确的错误堆栈跟踪?请注意,没有明确异常名称的
除外
将捕获所有错误。您最好使用
除了TimeoutException
是否有某些原因导致您不使用id,
搜索词
?在进行Naveen建议的更改后,代码工作正常。谢谢你的建议。我也尝试过使用id=search-term,这也很有效。在做了Naveen建议的更改后,代码现在可以像我预期的那样工作了。谢谢你,纳文。