Flutter使用web_scraper包抓取网页指定链接返回null该如何解决?
错误原因
- CSS选择器使用错误:你写的
h3.entry-title > a.href的作用是匹配class为href的a标签,并非提取a标签的href属性,目标HTML中的a标签没有对应class,因此无法匹配到元素,返回null。 - 参数逻辑混淆:
web_scraper的getElement方法第一个参数仅负责定位元素,需要提取的属性要放在第二个参数的数组中,不需要写入选择器。
修正方案
将代码修改为如下即可正常抓取:
List<Map<String, dynamic>> elementsUrl = webScraper.getElement('h3.entry-title > a', ['href']);
提取到的目标链接可以通过elementsUrl[0]['attributes']['href']获取。
内容的提问来源于stack exchange,提问作者defemz
相关产品推荐
相关产品推荐

