【发布时间】:2019-12-23 13:53:33
【问题描述】:
我正在尝试在只有连续标签的情况下抓取 HTML 页面。
我想从以下代码中获取标签的文本(例如 Name1、Name2、...),并考虑到:
"a" 后跟 "span" 提供有关该 ID 是否为客户的信息。
“a”后跟“a”表示ID是匿名的。
<span class="list">
<em>List 1:</em>
</span>
<a href="/ID/423006">Name1</a>,
<a href="/ID/115325">Name2</a>
<span class="small">(Customer)</span>,
<a href="/ID/248819">Name3</a>
<span class="small">(Non Customer)</span>,
<a href="/ID/658259">Name4</a>
<span class="small">(Customer)</span>,
<a href="/ID/294083">Name5</a>
<a href="/ID/218292">Name6</a>
<span class="small">(Non Customer)</span>
我正在使用以下 XPATH 来尝试匹配“a”后跟“span”
//a[包含(@href,'ID/') 和 ./following-sibling::span[1][text() = '(Customer)']]/text()
这将返回 Name1、Name2 和 Name4,即使 Name1 不是客户。我做错了什么?
【问题讨论】: