如何从带有 url 的网页读取 Open Graph 和元标记

2024-01-08

我希望我的网站能够在用户将链接粘贴到邮箱时提取有关网页的信息,类似于 Facebook。

我想知道像 Google、Reddit 和 Facebook 这样的网站如何能够仅通过 URL 来检索缩略图、标题和描述。

有人知道他们是如何做到这一点的吗?


基本算法相当简单:获取页面,分析内容,提取文本&图像&标题&其他内容,构建预览。 然而,对于特定的用例来说存在很多困难。菜单、横幅和添加、文本结构——大量不同的细节需要非常严格的处理。 AFAIK 没有算法可以在 100% 的情况下解决这个任务(是的,谷歌和其他算法并不完美)。

关于 Reddit。由于它是开源的,您可以找到他们到底是如何做的。 这是您要查找的代码:https://github.com/reddit/reddit/blob/master/r2/r2/lib/scraper.py https://github.com/reddit/reddit/blob/master/r2/r2/lib/scraper.py

Yandex 拥有允许执行相同操作的 API。你可以找到更多here http://api.yandex.com/rca/ and here http://api.yandex.com/rca/doc/dg/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从带有 url 的网页读取 Open Graph 和元标记 的相关文章

  • 停止 jQuery 循环设置 display:none;

    我正在创建一个小游戏 用户从一组项目中进行选择 然后对所选项目进行洗牌并选择一个 我正在使用 jQuery 循环 http jquery malsup com cycle http jquery malsup com cycle 运行主动画
  • jQuery-UI 的自动完成显示效果不佳,z-index 问题

    我目前正在我的客户网上商店中实现 jQuery UI 的自动完成功能 问题是 自动完成所在的元素的 z 索引高于自动完成的 z 索引 我尝试手动设置自动完成 z index 但我感觉 jQuery UI 正在覆盖它 事实上我的问题是重复的自
  • JS Facebook登录iOS8

    我的 facebook 应用程序上的登录按钮在 iOS 8 中完全停止工作 我以为这是我所做的事情 但是当我从他们的网站获取 facebook 示例 html 并将其应用到我的页面时 它仍然不起作用 我的应用程序 ID 已被替换 与 xxx
  • Flot 中轴的逗号分隔数字

    有没有办法让 Flot 使轴编号以逗号分隔 例如 用 1 000 000 代替 1000000 您可以通过使用轴的tickFormatter 属性来做到这一点 xaxis tickFormatter function val axis in
  • 同位素 Jquery 插件布局问题

    我正在尝试在此站点上设置同位素 它需要处理布局 并且我需要能够将项目附加到容器中 问题是它似乎没有正确初始化图像 这是我初始化它的方法 document ready function var container container cont
  • Chrome DevTools 脚本黑盒不起作用

    我正在尝试使用 chrome devtools 的新功能 黑盒脚本 这篇 Chrome Devtools 文章列出了脚本黑盒功能 https developer chrome com devtools docs blackboxing wh
  • 在 JavaScript 中给变量字符串加上引号

    我有一个 JavaScript 变量 var text http example com 文本可以是多个链接 如何在变量字符串周围放置 例如 我希望字符串看起来像这样 http example com var text http examp
  • jquery 工具提示在我的页面中添加 div role="log"

    我对 jquery tooltip 有一个奇怪的问题 我正在使用下面的代码
  • 监听鼠标事件……除了 div 的溢出:滚动滚动条?

    关于如何监听 mousedown 的任何建议 document exceptdiv 的溢出 滚动滚动条 我不确定滚动条是什么元素is为了参考它 您可以使用以下命令自行检查目标 document on mousedown function e
  • jQuery Datatables 分页中如何返回特定页面?

    我在每一行都有一个数据表和 编辑 按钮 当我单击该按钮时 edit url 将打开 到目前为止一切都很好 但如果我需要返回数据表 则从第一页开始 我能为此做些什么呢 table dataTable sDom rtFip gt fnDrawC
  • .attr('disabled', 'disabled') 或 .attr('disabled', true) 用于禁用输入

    Both attr disabled disabled and attr disabled true 在我的代码中工作 但我只是想知道 两者中哪一个更有效和 或哪一个更常用 真的有区别吗 也许是性能方面 应该没有什么区别 但从 jQuery
  • Javascript 将 CSV 文件加载到数组中

    我正在 WordPress 中开发一个网页 该网页需要有一个包含所有县的组合框 我有一个 csv 格式的数据集 其中包含所有这些县的约 10k 行 当用户在下拉列表中选择一个县时 我只想在网页中显示所选县的数据 这是我的要求 在 WordP
  • 通过 facebook api 在 facebook feed 中发布 swf

    我正在使用下面的数组 feeddata array type gt flash method gt stream publish display gt iframe link gt https developers facebook com
  • 使用 jQuery/JavaScript 提醒特殊字符

    如何在 Javascript jQuery 警报中显示带有特殊字符 例如 的字符串 例如 我想显示一个消息框 价格为 10 欧元 但是当我使用下面的代码时 alert The Price is euro 10 消息框中显示的输出是 The
  • 如何使用 OR 逻辑(而不是 AND)过滤表列

    小提琴示例 http jsfiddle net fks37 我有一个 html 表 A B C D 0 1 0 1 0 1 0 0 1 0 0 1 我要过滤non zero列 使用 jQuery dataTables 不是硬性要求 只是我当
  • 如何从 Selectize 中删除项目?

    有什么方法可以从 Selectize 中删除项目吗 这是我的示例列表 AMNT QTY NA 当我经过时NA它应该删除特定项目 fn removeSelectorValue function value var selectize this
  • Node Express 和 csurf - 403(禁止)无效的 csrf 令牌

    浏览并尝试了我在这里和其他地方通过谷歌搜索能找到的所有东西 但我就是无法克服这一点 我正在使用 Node Express EJS 并尝试在使用 jQuery ajax 发布的表单上使用 csurf 无论我如何配置 csurf 我都会收到 4
  • 图像处理编程

    我想知道是否有任何方法可以使用某种编程语言检测图像中对象的位置 例如 如果我有一个球的图像 每 100 毫秒更新一次 是否可以通过某些程序使用某些东西来获取球的坐标 看一下OpenCV http opencv willowgarage co
  • 如何从 Backbone 集合中提取多个属性?

    我试图从 Backbone 集合中提取多个属性 但它返回undefined 收藏 id 1 name raju age 23 sex male hobbies id 2 name ramesh age 43 sex male hobbies
  • $(this) 和 this 有什么区别?

    有人可以解释一下 它们之间有什么区别吗 例如我可以用 that 来做到这一点 var bar button click function if bar this alert same bar this 并且不能使用 that var bar

随机推荐

  • 管道、dup2 和 exec()

    我必须编写一个可以运行管道的外壳 例如像这样的命令ls l wc l 我已经成功解析了用户给出的命令 如下所示 ls 第一个cmd l frsarg wc scmd l secarg 现在我必须使用两个叉子 因为命令是两个和一个管道 我编写
  • XML 中真正允许的字符

    由于在解析某些 据说是 XML 数据时出现一些解析器错误 我查看了XML标准 http www w3 org TR REC xml d 找出真正允许的内容 我目前的疑虑是关于标签内容中允许包含哪些内容
  • 添加更多代码后,Google Apps 脚本会随机生成错误消息“发生意外错误”

    我编写了一个 Google Apps Script UiApp 应用程序 其中包含近 1000 行代码以及相当数量的处理程序和回调 该应用程序运行良好 但随着代码的增长 应用程序突然收到很多 发生意外错误 消息 错误消息在应用程序加载时出现
  • 您如何根据风格选择元素?

    使用 jQuery 您如何找到具有特定样式的元素 例如 float left 无论它是内联样式还是 CSS 文件中定义的样式 使用过滤功能 http docs jquery com Traversing filter filter func
  • 带有嵌套资源轨的嵌套表单 4

    我正在尝试在 Rails 4 0 3 上创建一个带有嵌套资源的嵌套 form for 但是我遇到了一些问题并且花了很多时间 问题是当我尝试提交表单时 这些值没有保存在我的数据库中 它将直接重定向到labs index 我已经定义了嵌套资源和
  • 为什么带宽以每秒位数来衡量?

    根据带宽的定义 它是频率的宽度 光谱 因此带宽应以 Hz 为单位进行测量 但 bps Mbps kbps 几乎到处都被用作带宽的度量 我需要知道的是 为什么使用 bps kbps 等数据传输速率测量来测量信号的带宽 由于对香农 哈特利定律的
  • 是的:将字段本身与另一个字段进行比较

    I had StartIntensity yup number EndIntensity yup number when StartIntensity StartIntensity number schema any gt return S
  • Rest 集合中的分页

    我有兴趣向 JSON 文档集合公开一个直接的 REST 接口 想想CouchDB http couchdb apache org or 坚持不懈 http persvr org 我遇到的问题是如何处理GET如果集合很大 则对集合根进行操作
  • Bootstrap 4.0.0 的 Jquery 兼容版本是什么

    请建议与Bootstrap版本4 0 0一起使用的jquery的兼容版本 也只是为了了解知识 列出了 bootstrap 和 Jquery 一起工作的版本 有什么建议或者参考 谢谢 Bootstrap 4 3 对导航栏菜单的创建方式进行了重
  • 带有 Html.ActionLink 的绝对(外部)URL

    我无法让 Html ActionLink 生成绝对网址 Html ActionLink DataBinder Eval c DataItem Name ToString DataBinder Eval c DataItem Path ToS
  • 使用 prometheus 统计 k8s 集群 cpu/内存使用情况

    我想用prometheus计算k8s集群cpu 内存使用情况 不是k8s pod使用情况 这样我就可以在grafana中显示 I use sum container memory usage bytes id 获取 k8s 集群使用的内存
  • JavaScript 中类型化数组的优点是它们在 C 中的工作方式相同或相似吗?

    我一直在玩类型化数组 https developer mozilla org en US docs JavaScript typed arrays在 JavaScript 中 var buffer new ArrayBuffer 16 va
  • Windows Azure Active Directory 应用程序中的“登录 URL”是什么?

    我已经在 Windows Azure Active Directory 中配置了我的第一个应用程序 一切正常 我可以使用目录中的帐户登录 但是 我还不完全清楚所有概念 尤其是登录网址 工具提示说 用户可以登录并使用您的应用程序的 URL 您
  • 有没有办法在Java中嵌入浏览器? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有没有办法在Java中嵌入浏览器 更具体地说 是否有一个可以模拟浏览器的库 从 JavaFX 2 0 开始 您现在可以使用webvie
  • Java 中未处理的异常

    我目前正在学习如何正确执行自定义异常 我偶然发现了一个问题 每当我尝试使用抛出此自定义异常的类的对象时 我的 IDE 调试器 我使用的是 IntelliJ idea 会显示 未处理的异常 InsertExceptionName 代码以简化的
  • 在不活动的情况下以编程方式停止 AWS EC2

    当开发环境中没有活动 例如 2 小时不活动后 时 我们是否可以停止开发环境的 AWS Windows Server EC2 实例 我无法确定是否有任何用户虚拟连接到服务器 我可以轻松地以编程方式在固定时间启动 停止 EC2 但为了降低服务器
  • 如何在堆栈上分配具有灵活数组成员的结构

    假设我们有一个以灵活数组成员结尾的结构 struct foo size t len uint8 t data 如何在堆栈上分配这个结构 即内存在作用域结束时自动释放 另外 如果len可以包含字段的大小data 目前 我做的事情如下 uint
  • 为什么 if [ ...某事... ];然后回显“退出状态是$?”总是发出 0?

    在 bash 中输出退出状态的正确方法是什么 据我所知 退出状态由 对应于最后执行的命令的状态 正在处理的脚本对作为参数提供的文件进行一些条件检查 例如 检查是否有任何文件被命名或文件是否存在 所以我有这样的条件语句 if eq 0 the
  • Kotlin 高阶函数组合

    我试图弄清楚如何在 Kotlin 中将一个函数声明性地定义为其他两个函数的组合 但我正在努力 这是我的代码 fun compose a Int Int gt Int b Int Int gt Int Int return a invoke
  • 如何从带有 url 的网页读取 Open Graph 和元标记

    我希望我的网站能够在用户将链接粘贴到邮箱时提取有关网页的信息 类似于 Facebook 我想知道像 Google Reddit 和 Facebook 这样的网站如何能够仅通过 URL 来检索缩略图 标题和描述 有人知道他们是如何做到这一点的