javascript - 在给定状态 ID 的 iPython Notebook 中嵌入推文

标签 javascript twitter embed jupyter-notebook

通过仅提供状态 ID 或 URL,我只是希望在我的 iPython Notebook 中很好地呈现推文状态(即以 Twitter cards 格式)。只需将链接放入帖子中,即可在 WordPress 中轻松实现此目的。

首先,尝试了 Twitter 提供的嵌入代码,当单击状态页面上的“更多”>“嵌入推文”按钮时会出现该嵌入代码。已成功插入 NB,但嵌入代码包含推文文本(我不想转到 Twitter 状态页面并单击我想要显示的每条推文的按钮,而是寻找一种自动执行此过程的方法):

HTML('<blockquote class="twitter-tweet" lang="en"><p>Sen. Joni Ernst of Iowa is set to give the Republican response to the President&#39;s <a href="https://twitter.com/hashtag/CNNSOTU?src=hash">#CNNSOTU</a>. <a href="http://t.co/PXWVbNsWXp">http://t.co/PXWVbNsWXp</a></p>&mdash; CNN Breaking News (@cnnbrk) <a href="https://twitter.com/cnnbrk/status/557737268488974338">January 21, 2015</a></blockquote><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>')

其次,尝试使用 iFrame 导入,但这返回了一个空的 iframe:

HTML('<iframe src=https://twitter.com/cnn/status/557737452346294274 width=700 height=350></iframe>')

出现此错误消息(注意:我还尝试将 &output=embed 附加到网址 suggested ):

Refused to display 'https://twitter.com/cnn/status/557737452346294274' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.

第三,尝试将 Twitter 的 widgets.js 脚本添加到 NB 中: suggested :

from IPython.display import Javascript
Javascript('window.twttr = (function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs); t._e = []; t.ready = function(f) { t._e.push(f);  };   return t; }(document, "script", "twitter-wjs"));')

并期望通过调用看到(这可能是我做错的地方):

HTML('<iframe src=https://api.twitter.com/1.1/statuses/oembed.json?id=557737268488974338></iframe>')

但出现了这个错误:

{"errors":[{"code":215,"message":"Bad Authentication data."}]}

这应该是非常简单的事情。这可能就是为什么它还没有被问过的原因。我对 JS 没有经验,所以请在您的回答中考虑到这一点。谢谢。

最佳答案

您可以先通过某种方式下载它(如下所示是我使用的 %download 魔法),然后使用 iframe。

IFrame with local html page

关于javascript - 在给定状态 ID 的 iPython Notebook 中嵌入推文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29287219/

相关文章:

asp.net - 在 JavaScript 中嵌入 ASP.NET 服务器代码

embed - Google Docs 删除标题和页脚

javascript - 如何隐藏嵌入的javascript key ?

javascript - 让 vibrate() 在没有 PhoneGap 的浏览器中工作

javascript - 将多维javascript数组绑定(bind)为c#中的方法参数

javascript - 创建唯一变量

api - 通过 Twitter Streaming API 获取所有过去的推文

javascript - vue中如何使用外部js文件

python - 我如何知道使用 python-twitter GetSearch() 方法可以获得多少结果页面

php - 类似 Twitter 的关注系统