[英]Getting the href attribute from html gives unwanted results
我基本上是从网站上抓取一些内容,HTML 看起来像这样:
<div>
<a class="title" href="/recipe/pasta">Pasta Recipe</a>
</div>
现在在从网站上刮下这个之后,我使用 js 来获取这样的 href 属性:
html.getElementsByTagName('a')[0].href
现在的问题是它返回: file:///A:/recipe/pasta
但我想要的结果是/recipe/pasta
。 这是同一问题的 Stack Snippet 示例 - href
导致域被前置,这是不可取的:
console.log(document.getElementsByTagName('a')[0].href);
<div> <a class="title" href="/recipe/pasta">Pasta Recipe</a> </div>
我可以通过基本的字符串操作来解决这个问题,但这似乎很初级。
还有file:///A:
是我电脑上的驱动器A:
驱动器。 如果我在另一台计算机上运行它,那么它将变成file:///C:
,代表C:
驱动器。
知道我正在使用 nodeJS 在电子应用程序上执行此操作也可能有所帮助。
改用getAttribute
来获取属性的普通值,而不是其他任何内容:
const href = document.querySelector('a').getAttribute('href'); console.log(href);
<div> <a class="title" href="/recipe/pasta">Pasta Recipe</a> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.