如何从给定HTML代码中提取POST WINERY相关文本并定位对应元素
提取方案
完全可以实现提取,结合你给出的HTML结构,以下是几种常用的精准选中元素的方法:
- XPath选择(适配爬虫、XML解析类场景)
可以通过位置或者文本特征匹配元素,两种常用写法:
按节点位置匹配(目标是第2个tr下的td)://tr[2]/td[@colspan="2"]
按文本特征匹配(避免位置变动导致匹配失效)://td[contains(text(), "POST WINERY") and @colspan="2"]
匹配到元素后读取文本内容即可得到目标值。 - JavaScript DOM操作(适配浏览器端场景)
先选中所有带colspan="2"属性的td节点,取下标为1的节点(数组从0开始计数)即可:
执行后const targetTd = document.querySelectorAll('td[colspan="2"]')[1] const wineryName = targetTd.textContent.trim()wineryName变量值就是POST WINERY, POST WINERY, INC.。 - 正则匹配(适配纯文本解析场景)
如果不需要解析DOM,直接对整段HTML做正则提取即可,匹配规则如下:/<td colspan="2">([^<]*POST WINERY[^<]*)<\/td>/
提取匹配结果的第一个捕获组内容即可。
内容的提问来源于stack exchange,提问作者char
相关产品推荐
相关产品推荐

