首页 > 解决方案 > 如何在 node.js 中访问标签的 href

问题描述

我有这个功能

function getxPath(data, path) {
  console.log("HEREEEEEEEEEEEEEEEEEEEEEEE");
  console.log(path);
  //console.log(data);
  try {
    let root = new dom().parseFromString(data);
    console.log(root);
    let results = xpath.select(path, root);
    console.log(results);
    if (results.length > 0) {
      let _results = [];
      for (let r of results) {
        _results.push(r.textContent);
      }
      return _results;
    }
  } catch (exc) {
    console.log(exc);
  }
  return null;
}

路径是://a[@class='classifiedTitle']/@href

我正在尝试获取此页面上所有广告的链接:

https://www.sahibinden.com/en/cars/used?date=1day&a5_min=2005&a5_max=2020

但即使 xpath 看起来正确,它也会返回 null。

编辑:我使用了完整的 xpath,它给了我一个标题。但是当我使用@href 时,它并没有给出

编辑:我可以使用这个 xpath 获取链接:

/html/body/div[4]/div[4]/form/div/div[3]/table/tbody/tr//a[1]/@href

标签: htmlnode.jsxpath

解决方案


推荐阅读