python - 如何在xpath中打印前面的兄弟姐妹
问题描述
我正在尝试使用 xpath 获取元素的前面的兄弟姐妹。
我正在寻找 2 个兄弟姐妹:
sibling_two = driver.find_elements_by_xpath("//span[contains(@class, 'tag')]/preceding-sibling::a[2]")
sibling_one = driver.find_elements_by_xpath("//span[contains(@class, 'tag')]/preceding-sibling::a[1]")
如果sibling_two
不存在,我想输出sibling_one
这是我的代码,但它只输出sibling_two
值
if sibling_two:
for i in sibling_two:
print(i.text)
else:
for a in sibling_one:
print(a.text)
关于如何解决这个问题以输出sibling_one
和sibling_two
值的任何想法?
感谢您花时间阅读我的问题并提供帮助。
解决方案
不要使用if
else
,使用两个if
s:
if sibling_two:
for i in sibling_two:
print(i.text)
if sibling_one:
for a in sibling_one:
print(a.text)
推荐阅读
- time-series - 测量精度错误打印不适用
- php - 在 Laravel Blade 模板中的 AJAX 响应中出现错误
- keycloak - 如何通过keycloak中的自定义属性获取用户?
- javascript - 如何使用 mongodb native、express 和 body-parser 来发布请求和保存数据?
- android - 将 android studio 从 3.2 更新到 3.3 后出现错误
- python - 无法安装python模块
- javascript - 当输入提供为“2018.1”时,如何获得针对季度的输出,例如“FY18 Q1”?
- python - 如何避免使用全局变量?
- .net - .Net Core 2.1 应用程序在使用 Docker 部署到 Heroku 时崩溃
- security - 如果我不存储密钥,加密我的 JWT 身份验证令牌客户端是否安全?