微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用node.js和javascript模仿Facebook的“链接共享”功能

如何解决如何使用node.js和javascript模仿Facebook的“链接共享”功能

|| 所以我想模仿的是Facebook提供的链接共享功能。您只需输入URL,然后FB自动从目标网站获取图像,标题和简短描述。如何用node.js和其他可能需要的javascript在javascript中对此程序进行编程?我找到了一个使用PHP的fopen函数的示例,但我宁愿不将PHP包含在该项目中。 我要问的是网络抓取示例吗?我需要做的就是从目标网站的Meta标签内部检索数据,然后再使用CSS选择器获取图像标签吗? 如果有人可以指出正确的方向,那将不胜感激。谢谢!     

解决方法

看这个帖子。它讨论了如何使用node.js进行抓取。 这里您有很多关于使用javascript和jquery进行抓取的先前信息。 就是说,Facebook实际上并没有猜测标题,描述和预览是什么,它们(至少在大多数情况下)是从网站中存在的元标记中获取该信息的,这些元标记希望让fb用户更易于访问。 也许您可以利用现有的元数据提取标题,描述和img预览。有关可用元数据的文档在这里。     ,是的,需要进行网络抓取,这很容易。困难的部分是用于查找标题以及相关文本和图像的通用算法。 如何刮 您可以使用jsdom在服务器中下载并创建DOM结构,然后在服务器上使用jquery对其进行抓取。如上面@generalhenry所建议,您可以在blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs上找到一个很好的教程。 刮什么 我想找到标题的好方法是:
var h;
for(var i=6; i<=1; i++)
 if(h = $(\'h\'+i).first()){
  break;
 }
现在,
h
将带有标题,或者fails2ѭ将带有标题。替代方法可能只是获取页面的
title
标签。 :) 至于图像。列出该页面上相当大的所有或前几个图像,例如,以滤除用于按钮,箭头等的图片。 在获取远程数据时,请确保“ 4”标志已关闭。这样可以确保广告的脚本代码不会污染获取的页面。 是的,相关文本将在
h
之后的某些标记中。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。