Python Selenium Webdriver:无法使用 "textContent" 获取所有隐藏元素的数据
Python Selenium Webdriver: Unable to fetch data for all hidden elements using "textContent"
我想从 Netflix 抓取数据以获取以下信息:
1.Show 姓名
2.Season
3.Episode 每个季节的名称
4.URL 每集
5.Duration 为每个节目。
Selenium 版本:3.141.0 Python 版本:3.6.6,使用 Chrome Webdriver.
该工具可以登录,搜索特定节目并单击剧集选项卡,如下所示:
Screenshot of sample episodes for a show
HTML个元素每集详情如下:
div class="slider-item slider-item-0"
div class="slider-item slider-item-1"
div class="slider-item slider-item-2"
div class="slider-item slider-item-3"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
第 4 项之后,其他元素从主屏幕隐藏
我使用以下代码定位元素 driver.find_elements_by_xpath("//div[@class='episodeTitle']// p[@class ='ellipsized']"). 这给出了每个节目的剧集名称列表。
我知道我们可以使用 print demo_div.get_attribute('innerHTML') 来定位隐藏元素
driver.execute_script("return arguments[0].innerHTML", demo_div)
打印demo_div.get_attribute('textContent')
driver.execute_script("return arguments[0].textContent", demo_div)
来自下面 link:
https://yizeng.me/2014/04/08/get-text-from-hidden-elements-using-selenium-webdriver/
问题:每次遗漏最后两集或更多集的细节。
我已经使用上述两种技术来获取隐藏元素,但没有运气
我还使用了 Web 驱动程序隐式和显式等待时间,但仍然缺少一些情节。
获取剧集名称的代码片段:
e8= driver.find_elements_by_xpath("//div[@class='episodeTitle']//p[@class ='ellipsized']")
感谢您的帮助。
这些 div 在单击箭头时动态加载。
- 您应该提取可见项目列表
- 然后单击箭头按钮并等待列表替换或加载
- 提取新列表
我想从 Netflix 抓取数据以获取以下信息: 1.Show 姓名 2.Season 3.Episode 每个季节的名称 4.URL 每集 5.Duration 为每个节目。 Selenium 版本:3.141.0 Python 版本:3.6.6,使用 Chrome Webdriver.
该工具可以登录,搜索特定节目并单击剧集选项卡,如下所示: Screenshot of sample episodes for a show
HTML个元素每集详情如下:
div class="slider-item slider-item-0"
div class="slider-item slider-item-1"
div class="slider-item slider-item-2"
div class="slider-item slider-item-3"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
div class="slider-item slider-item-"
第 4 项之后,其他元素从主屏幕隐藏
我使用以下代码定位元素 driver.find_elements_by_xpath("//div[@class='episodeTitle']// p[@class ='ellipsized']"). 这给出了每个节目的剧集名称列表。
我知道我们可以使用 print demo_div.get_attribute('innerHTML') 来定位隐藏元素
driver.execute_script("return arguments[0].innerHTML", demo_div)
打印demo_div.get_attribute('textContent')
driver.execute_script("return arguments[0].textContent", demo_div)
来自下面 link:
https://yizeng.me/2014/04/08/get-text-from-hidden-elements-using-selenium-webdriver/
问题:每次遗漏最后两集或更多集的细节。
我已经使用上述两种技术来获取隐藏元素,但没有运气
我还使用了 Web 驱动程序隐式和显式等待时间,但仍然缺少一些情节。
获取剧集名称的代码片段:
e8= driver.find_elements_by_xpath("//div[@class='episodeTitle']//p[@class ='ellipsized']")
感谢您的帮助。
这些 div 在单击箭头时动态加载。
- 您应该提取可见项目列表
- 然后单击箭头按钮并等待列表替换或加载
- 提取新列表