gpt4 book ai didi

javascript - 如何猜测 HTML 文档的真实标题?

转载 作者:行者123 更新时间:2023-11-28 04:08:26 25 4
gpt4 key购买 nike

很多人在他们的 <title> 中放入了极其无用和烦人的东西标签,我正在尝试编写仅提取有趣部分的 Javascript 代码。

例如,在 Google 搜索中,您会得到此文档标题:
some random search - Google Search
“Google 搜索”部分是多余的,因为您已经在域名(和网站图标)中拥有此信息。在这个例子中,我想要这部分:
some random search

大多数网站的作者可能使用如下所示的“破折号符号”:
Site name - Title或者
Title - Site name
但如果真的那么容易,我就不会在这里问了。 ;)

还有一些非常烦人的情况,标题不在 <title> 中。根本没有标签。 (哦,讽刺!)看看纽约时报的这一页:Egypt’s Autocrats Exploited Internet’s Weaknesses - NYTimes.com .而文章的标题实际上是:Egypt Leaders Found ‘Off’ Switch for Internet .什么鬼,纽约时报?

假设我们可以访问页面的 DOM,提取此信息的最可靠方法是什么?我认为一个好的起点是 <h1>标签,但它不可靠。我想有很多作者根本不使用它或多次使用它。

更新:<title> 的组合和 <h1>内容对我来说似乎是合理的。感谢所有提出建议的人。但是如果没有<h1>怎么办?标签?我认为一些(不可否​​认,坏的)作者不使用它们,而只是指定 <div> 的字体大小。或 <span> .

我目前正在创建我的第一个浏览器扩展。 (这不是很好吗?)它具有让您保存当前选项卡的功能,因此它应该可以正常工作并且适用于尽可能多的页面。

谢谢大家! :)

最佳答案

title 标签是任意的,h1 标签是任意的。您真正希望的最好的是逐个站点地定制您的脚本,并希望该站点至少始终如一地从一个页面到另一个页面执行操作。例如,与 SO 一样,您可以看到他们执行 [tag] - [question] - [site]。所以你可以轻松地在连字符处拆分并获取第二个元素。没有真正的“一刀切”解决方案。必须对网站进行研究,找到模式。

编辑:

根据评论中的回应......IMO“足够好的猜测”将涉及

1) 只看document.title。正如其他人所提到的,除了 h1 标签之外,人们还可以使用其他内容作为页内“标题”,然后您就有可能看到根本不适合标题的内容。

2) 在连字符、竖线或冒号处拆分。这些是 3 个最常用的分隔符。

3) 如果拆分产生 2+ 个数组元素,请查看最后一个元素是否为域的 indexOf 返回 true。如果是这样,请使用倒数第二个元素。如果不是,则使用最后一个数组元素。

关于javascript - 如何猜测 HTML 文档的真实标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5018335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com