selenium-webdriver - 使用 selenium.webdriver.find_element_by_xpath() 返回 span 标签的值
问题描述
我正在尝试从正在播放的 youtube 视频中提取当前视频时间。
我检查了 youtube 页面以找到存储当前时间值的元素。这是下面的元素。
span class="ytp-time-current">0:03</span>
我必须在 span 之前和之后删除严格的不等号,因为它返回 0:03 并且看不到整个标签。
我尝试使用搜索查找值wd.find_element_by_class_name("ytp-time-current") but returns none
我还复制了元素的 xpath:
//*[@id="movie_player"]/div[20]/div[2]/div[1]/div/span[1]
并尝试使用 _xpath() 查找值
我试过的代码
from selenium import webdriver
wd = webdriver.Chrome(executable_path = r'pathtodriver')
wd.get('https://www.youtube.com/watch?v=N__fRbG84fI')
search = wd.find_element_by_class_name('ytp-time-current')
value = wd.find_element_by_xpath('//*[@id="movie_player"]/div[22]/div[2]/div[1]/div/span[1]').get_attribute('Value')
我希望得到一个整数值或至少一个字符串。但两种情况都没有返回。
解决方案
标签没有<span>
value 属性。你可能想做:
value = wd.find_element_by_xpath('//*[@id="movie_player"]/div[22]/div[2]/div[1]/div/span[1]').text
(我假设这是 Python 绑定)
推荐阅读
- c# - bouncycastle 如何确定 ECDSA 签名的第一个字节(恢复 ID)
- python - tkinter:GUI启动时如何检测“Checkbutton”?
- terminal - 如何为透明的PNG文件添加背景?
- node.js - DocuSign API 连接密钥
- flutter - 如何在颤动中的每次重复动画之间添加延迟
- amazon-web-services - 是否可以在带有 S3 存储桶的 AWS 负载均衡器侦听器上使用路径基础路由?
- google-bigquery - Google BigQuery - 有没有一种方法可以在多个列中搜索值列表。像 CONTAINS_SUBSTR 或 REGEXP_CONTAINS
- sql - Logstash 实例因 ConnectionJdbcException 而失败
- r - 是否可以从 Power BI 获取用户输入并传输到 R 进行分析和计算?
- visual-studio-code - 如何使用键盘快捷键重置 vscode 终端窗格大小?