python - Python + Selenium:我无法从 div 获取打印文本
问题描述
Python + Selenium:我无法从此 div 获取打印文本:
<div id="modal-content-18" class="modal-content" data-role="content">
<div>
SignUp Failed. Please Try Again.
</div>
</div>
我试过这个:
resp = browser.find_element_by_class_name("modal-content").text
print resp
但它不起作用。
请帮我。
解决方案
由于这些情况,我个人更喜欢 xpaths。他们也可以处理许多复杂的案例。尝试以下操作:
resp = browser.find_element_by_xpath('//div[@class="modal-content"]/div').text
print resp
如果元素在屏幕上不可见。文本方法将是无。在这种情况下,您需要 textContent 属性。然后使用以下内容:
resp = browser.find_element_by_xpath('//div[@class="modal-content"]/div').get_attribute("textContent")
print resp
请让我知道这对你有没有用。还要确保modal-content
页面上只有一个。如果有多个,则您的 css_selector 不足以识别此元素。要检查这一点,您可以运行以下命令。
l = len(browser.find_elements_by_xpath('//div[@class="modal-content"]/div'))
print l
如果它返回一个大于 1 的数字,那么modal-content
仅该类是不够的,您需要扩展您的选择标准。
推荐阅读
- javascript - Vue DOM 图像无法正确显示
- c - 使用函数atof的C错误,将字符串更改为双精度
- ruby - 在Ruby中提取两个数字之间的项目
- moq - MOQ- 使用 Func 参数设置和验证通用方法
- python-3.x - psutil Process 类的状态常量的含义
- cmd - Windows shell 命令:没有目标的复制命令
- php - 警告:fopen(write2File.txt):无法打开流:权限被拒绝
- c# - 如何在邮递员的帖子请求正文中传递字符串
- ionic3 - 在 IONIC 3 移动应用程序中使用 Instagram 登录
- go - 基本 goroutine 和通道模式:一个通道的多个 goroutine