发布一个Jupyter笔记本作为一个中等博客

jupyter-to-medium的Python项目详细描述


Jupyter到Medium

PyPI - License

在Jupyter_to_Medium的帮助下,直接从您的笔记本发布Jupyter笔记本作为媒体博客帖子。在

目标用户

你。。。。在

  • 在媒体上发布博客文章?在
  • 用Jupyter笔记本写你的帖子?在
  • 不喜欢把你的帖子从Jupyter转移到Medium所需的时间和精力?在

如果是这样的话,jupyter_to_medium将自动处理您的jupyter笔记本,并在几乎没有时间的情况下将其发布为中邮,从而节省了大量的时间。在

动机

我自己都是从Jupyter笔记本开始的。手动将它们转换为中等职位是一个相当漫长、艰苦的过程。一个特别痛苦的过程是在我的帖子中插入表格,而媒体并不支持。几乎我所有的帖子都包含了大量的pandas数据帧(such as this one),其中有40个!数据帧),在笔记本中用HTML表表示。我把每一篇文章的截图插入到我的每一篇文章中。在

安装

pip install jupyter_to_medium

自动激活

您应该可以跳过下一步,但是如果您的笔记本中没有显示扩展名,请运行以下命令:

jupyter bundlerextension enable --py jupyter_to_medium._bundler --sys-prefix

从媒体获取集成令牌

在使用此包之前,您必须从media请求一个集成令牌,方法是将它们发送到yourfriends@medium.com中,允许您在your Medium settings.中创建一个令牌。您可以阅读entire instructions on how to get your integration token。在

创建集成令牌

一旦您创建集成令牌的请求被接受,导航到页面底部的your Medium settings.集成令牌部分存在。输入令牌的描述(jupyter_to_medium是个不错的选择),然后创建令牌。在

png

保存集成令牌

获得集成令牌后,在主目录中创建文件夹和文件.jupyter_to_medium/integration_token,并将令牌保存在那里。如果你不保存它,你就需要在每次你想发布新帖子时访问它。在

使用

发布笔记本有三种方法:

  • 在活动笔记本中
  • 从命令行
  • 使用Python脚本

在笔记本中发布到媒体

安装后,打开要发布的笔记本并选择选项File -> Deploy as -> Medium Post

png

将打开一个新的浏览器选项卡,其中包含需要填写的简短表单。在

png

单击“发布”后,笔记本和所有图像将上载到“媒体”。任何HTML表(比如pandas数据帧)都将被转换成图像(通过chrome),因为Medium无法表示表。这是一个耗时的过程,所以要做好等待的准备。检查终端的更新。如果成功,您将得到以下响应,其中包含查看帖子的链接。在

png

单击“查看”链接。在

png

完成并在媒体上发布

目前,您的帖子将以草稿形式发布。在媒体上审阅并发布帖子。在

从命令行发布到媒体

安装后,您可以使用与下面函数相同的选项访问命令行程序jupyter_to_medium。在

jupyter_to_medium --pub-name="Dunder Data" --tags="python, data science""My Awesome Blog Post.ipynb"

使用Python脚本发布到介质

在单独的脚本/笔记本中,将juptyer_to_medium导入为模块。通过publish函数,将要发布为媒体博客文章的Jupyter笔记本的位置传递给它。在

^{pr2}$

如果成功,将打印一条消息,其中包含文章的URL。此外,JSON数据将作为包含从介质返回的请求的字典返回。在

适用于经典笔记本电脑而不是Jupyter实验室

目前,这个软件包只适用于“经典”Jupyter笔记本电脑,在Jupyter实验室不可用。如果你有制作黄麻的经验实验室分机,请告诉我。在

故障排除

如果你的帖子不成功,一条有错误的消息会被打印到屏幕上,其中包含可能有助于你解决问题的信息。在

使用Chrome或Matplotlib进行表转换

默认情况下,表格将通过ChromeWeb浏览器通过截图进行转换。如果你没有安装Chrome或者不能 让chrome工作,选择“matplotlib”进行表转换。在

依赖关系

  • nbconvert公司
  • 请求
  • 谷歌Chrome/Brave浏览器
  • matplotlib(用于裁剪图像和Chrome浏览器不工作时)
  • BeautifulSoup(用于分析降价表)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将数据从UI传递到数据库JSF、JPA等   静态和非静态的java错误   java Hibernate打开会话两次,需要事务   泛型对于这个简单的Java层次结构问题,我的最佳方法是什么?   googleappengine上的javasqlite   java如何实现或找到threadsafe CompletionService的等价物?   java类访问不同线程上的父类   调用SQLException时发生java RuntimeException。getMessage()(DB2)   java JTree:可变行高   链表编写一种方法,以升序对单个linkedlist进行排序(java)   java将TileMap加载到stage类libgdx中   java如何将数据正确添加到嵌套hashmap