【问题标题】:Unable to get response in css selector or xpath expression无法在 css 选择器或 xpath 表达式中获得响应
【发布时间】:2018-08-31 21:26:18
【问题描述】:

我正在尝试从https://www.sunnxt.com/movie/inside/ 网站获取电影名称。当我去检查元素时,它会显示带有电影名称的元素,但是当我执行 css 选择器或 xpath 表达式时,它没有给出电影名称。

当我点击查看源代码时,我看到那里的代码不同。并且所有的电影数据都放在了

之间
标签。

请帮我获取所有电影名称。

【问题讨论】:

    标签: css python-2.7 selenium xpath scrapy-spider


    【解决方案1】:

    要检索电影名称,您必须将WebDriverWaitexpected_conditions 结合为visibility_of_all_elements_located,如下所示:

    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
    
    driver=webdriver.Firefox(executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
    driver.get("https://www.sunnxt.com/movie/inside/")
    movieList = WebDriverWait(driver, 10).until(EC.visibility_of_all_elements_located((By.XPATH, "//h2[@class='title']//following::div[@class='home_movie_list_wrap']//a//h2")))
    for item in movieList:
        print(item.text)
    driver.quit()
    

    控制台输出:

    Gulaebaghavali
    KALAKALAPPU 2
    Motta Shiva Ketta Shiva
    Annadurai
    Aramm
    Kaththi Sandai
    Meesaya Murukku
    Spyder
    Sathriyan
    Bogan
    Brindavanam
    Vivegam
    Bairavaa
    Karuppan
    Muthina Kathirika
    Dharmadurai
    Thozha
    Pichaikkaran
    Devi
    Aranmanai 2
    Jackson Durai
    Hello Naan Pei Pesuren
    Kathakali
    Kodi
    

    【讨论】:

    • 太棒了。非常感谢,但不明白你的代码
    • 在我们的代码中,我们借助 xpath 识别所有电影名称并将其传递给 expected_conditions 以等待它们的 visibility 元素可见给我们返回了一个List。最后,我们遍历 WebElementsList,然后提取文本并打印出 Movie Names
    • 请告诉我在哪里可以学习 selenium.. 我了解 xpath 部分但我不了解 Selenium
    • @Pradeep 学习 Selenium 的最佳方法是遵循任何作者的教程系列,同时通过您的创新代码帮助他人。
    猜你喜欢
    • 2018-09-02
    • 2020-03-05
    • 2018-05-04
    • 2013-07-23
    • 2020-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-04
    相关资源
    最近更新 更多