scrapy Xpath-如何从文本()中提取特定的单词?

sigwle7e  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(144)

有人能帮助我如何从Xpath表达式的text()中提取特定单词吗
我目前正在废弃网站上的硬币名称:https://coinmarketcap.com/currencies/bitcoin/
使用了Xpath表达式:(//h1[@class='priceHeading']/text())[1]
上面写着"比特币价格",我只需要第一个单词"比特币",忽略其他的.
不要介意我的错误,我是一个新手在这里:)

nqwrtyyt

nqwrtyyt1#

当然,这取决于您所依赖的内容以及使用的XPath版本。空间是否足够,或者是否需要更复杂的标记化,在很大程度上取决于数据和您的需求。
使用XPath 1.0和更高版本,可以使用substring-before()表示空格

substring-before((//h1[@class='priceHeading']/text())[1], ' ')

使用XPath 2.0和更高版本,可以使用tokenize()并选择第一项

tokenize((//h1[@class='priceHeading']/text())[1], ' ')[1]

如果你知道它总是以“Price“结尾,那么你可以使用这个值来代替substring-before()tokenize()中的一个空格,或者可以将replace()Price“替换为“''“:

replace((//h1[@class='priceHeading']/text())[1], ' Price', '')

相关问题