【发布时间】:2019-08-15 10:20:30
【问题描述】:
我最初要求一种空样式和 ::before css 的组合,但 Selenium 似乎无法识别 css。
所以我发布了一段较大的 html 并要求另一种组合:样式为空和文本后跟样式。这将是 style="">完全访问权限
这是扩展的html:
<span class="highwire-citation-access highwire-citation-access-check" data-pisa-id="sci;science.aav1483" data-atom-uri="/sci/363/6422/eaav1483.atom" data-request-view="full">
<i class="highwire-access-icon highwire-access-icon-user-access user-access fa fa-unlock-alt" title="Full Access" aria-hidden="true" style=""></i>
<span class="element-invisible highwire-access-icon highwire-access-icon-user-access" style="">Full Access</span>
<i class="highwire-access-icon highwire-access-icon-no-access no-access fa fa-lock" title="Restricted Access" aria-hidden="true" style="display:none;"></i>
<span class="element-invisible highwire-access-icon highwire-access-icon-no-access" style="display:none;">Restricted Access</span></span>
<i class="highwire-access-icon highwire-access-icon-user-access user-access fa fa-unlock-alt" title="Full Access" aria-hidden="true" style=""></i>
<span class="element-invisible highwire-access-icon highwire-access-icon-user-access" style="">Full Access</span>
<i class="highwire-access-icon highwire-access-icon-no-access no-access fa fa-lock" title="Restricted Access" aria-hidden="true" style="display:none;"></i>
<span class="element-invisible highwire-access-icon highwire-access-icon-no-access" style="display:none;">Restricted Access</span>
python相关代码:
child = browser.find_elements(By.XPATH,(" %s" % exp))
for t in child:
verbose = t.get_attribute('innerHTML')
现在表达式 %s 被 xpath 替换:
"//*[(@style='""')]/../../*"
结果是完全访问和受限访问元素。
【问题讨论】:
-
您应该发布更大的相关 html 块,以便这里的人可以看到上下文。
-
您会发布您正在使用的 Python 代码,而不仅仅是选择器吗?
-
你说得对。我刚刚添加了 Python 代码和更多的 html。谢谢你们。
标签: python selenium-webdriver xpath webdriverwait xpath-1.0