如何创建像Facebook分享的URL提取器

时间:2010-06-08 17:03:08

标签: php python facebook

我需要从网址中提取数据 如标题,描述和给定网址中的任何vedios图像 喜欢facebook分享按钮

像这样: http://www.facebook.com/sharer.php?u=http://www.wired.com&t=Test

问候

5 个答案:

答案 0 :(得分:5)

对于这个目的,

Embed.ly有一个很好的api。他们的api返回网站的oEmbed数据(如果可用) - 否则,它会尝试提取Facebook页面的摘要。

答案 1 :(得分:4)

使用cURL之类的内容来获取页面,然后使用Simple HTML DOM之类的内容来解析它并提取所需的元素。

答案 2 :(得分:2)

如果网站支持oEmbed,那么这比抓取HTML更容易,更强大:

  

oEmbed是一种允许在第三方网站上嵌入表示URL的格式。简单的API允许网站在用户发布到该资源的链接时显示嵌入的内容(例如照片或视频),而无需直接解析资源。

oEmbed受到YouTube和Flickr等网站的支持。

答案 3 :(得分:1)

我正在为这个问题开发一个项目,它并不像编写html解析器那样容易,并期望网站是“语义的”。特别是提取视频和查找自动播放参数正在被杀死。您可以在http://www.embedify.me中检查项目,该项目还包含fb样式的url预览脚本。正如我所见,embed.ly和oembed是被动解析器,他们需要站点支持它们,所谓的提供者,这种方法与fb完全不同。

答案 4 :(得分:-1)

当我在寻找类似的功能时,我遇到了Facebook消息的url提取功能的jQuery + PHP演示: http://www.99points.info/2010/07/facebook-like-extracting-url-data-with-jquery-ajax-php/

它不使用HTML DOM解析器,而是使用简单的正则表达式。它寻找标题,描述和img标签。因此,图像提取对于许多使用CSS用于图像的网站来说效果不佳。此外,Facebook首先查看自己的元标记,然后查看HTML的经典描述标记,但它很好地说明了原理。