如何获得html标签属性与方括号使用css选择器?



我想解析一个页面,它有几个项目,结构如下:

<span itemprop="telephone" [class]="revealtel?'':'invisible'" class="">11111111</span>
<span itemprop="telephone" [class]="revealmainfax?'':'invisible'" class="">222222222</span>

我使用Scrapy和CSS选择器来解析数据。但是我不知道如何得到电话或传真号码。Itemprop在这两种情况下是相同的,因此不能使用它。那么,如何选择具有[class]="revealtel?'':'invisible'[class]="revealmainfax?'':'invisible'属性的元素呢?也许不使用CSS选择器,而是使用Xpath?我不擅长xpath…

提前感谢你的帮助:)

使用xpath获取以telephone为itemprop的元素的所有文本列表。

faxnum = None
telnum = None
numbers = response.xpath('//span[@itemprop="telephone"]')
for element in numbers:
text = element.extract()
if re.search('revealmainfax', text):
faxnum = element.xpath('./text()')
else:
telnum = element.xpath('./text()')

尝试:

response.css('span[itemprop="telephone"]::text').getall()

最新更新