时光飞逝,距离发布上一篇文章 InteractiveGraph 实现酷炫关系图谱之前瞻 已经过去了近两个月,嘴上说着会马上把实战“娱乐圈明星关系图谱”的代码开源到 github/DesertsX,但却一直没有行动来着。

其实扯皮的话在那篇里已经讲得差不多了,后面代码部分感觉也没啥可讲的,稍微加点注释说明下哪块代码实现了什么功能,丢给大家自己琢磨就是了,也没啥太难的地方其实(逃……)。那既然代码都能跑通,也没啥不可抗拒的力量,为啥还“拖更”呢?虽然也并没有人催……

说起来,也是想到看到这个项目的很多人,可能不会写代码,现成的项目开源在全球最大的同性交友网站GayHub上也一头雾水,不会运行。而无法体验这么酷炫的明星关系图谱该是多么遗憾的事,所以古柳想着一定要把它部署到网页上,可供大家体验把玩!说干就干。

然而心有余而技能树不足的是,古柳并不会前端,也从没部署过网页,看代码里用到了flask,于是本着顺藤摸瓜地好学的精神跑去看了些视频学了下,真是一坑未平又入一坑。其实回头看该项目只用到非常入门级的flask知识,有代码为证,两处python代码也就这么几行而已:
app_run.py

import os
import sys
from flask import Flask
sys.path.append(".." + os.path.sep)
from webapp.views.graph_view import graphapp = Flask(__name__)
app.register_blueprint(graph)if __name__ == '__main__':app.run()复制代码

graph_view.py

from flask import Blueprint, render_template
graph = Blueprint('graph', __name__)# http://127.0.0.1:5000/ylq-star-GraphNavigator
@graph.route('/ylq-star-GraphNavigator')
def ylq():return render_template('ylq-star-GraphNavigator.html')复制代码

以及被渲染的ylq-star-GraphNavigator.html模板里引入jscss文件和json数据时,用了{{url_for()}}的语法来给静态文件生成 URL ,并使用特殊的 'static' 端点名,这里仅以引入jquery-3.2.1.min.js为例,其他类似。

<script src="{{url_for('static',filename='./lib/jquery-3.2.1/jquery-3.2.1.min.js')}}"></script>复制代码

不过后面部署到 GitHub Pages 时都改成了相对路径的格式(划重点)

<script src="./static/lib/jquery-3.2.1/jquery-3.2.1.min.js"></script>复制代码

如果你想了解下上述代码的含义,可以看看官方教程:快速入门— Flask 0.10.1 文档

再是后续了解了下部署网页应用可能用到的技术栈之一:python+flask+nginx+gunicorn+supervisor,当然并非唯一。看过几篇文章后感觉各种配置比较繁琐,但应该不难,只是还需要“昂贵”的服务器和域名,一想到只是用来展示这个关系图谱,内心深处的“经济学理性人”就劝退了我。

貌似故事到这就该结束了,无法看到酷炫关系图谱的人,就自个人遗憾去吧。但忘了是什么缘由,古柳似乎被这个项目点燃了对前端的兴趣,于是搜罗了几本Vue.js的书(配图的梗搜下Vue的logo就明白了),找了些视频教程,过了遍基础……那是后话了,暂且不表。

也正是如此(要是以前一定不会关注到前端的文章),后来在掘金看到一篇蛮酷的文章 用vue2.6实现一个抖音很火的【时间轮盘】屏保小DEMO ,注意到其在线体验地址 https://hongqingcao.github.io/word-clock/ 不就是用的GitHub Pages嘛。如果你不知道GitHub Pages是什么,这里摘录一段介绍文字希望能解答你的困惑,想来你依然没看懂,说人话就是可以用来免费搭建个人博客,还是很不错的,目之所及用GitHub Pages搭建博客的人简直不要太多:

Github Pages 是面向用户、组织和项目开放的公共静态页面搭建托管服务,站点可以被免费托管在 Github 上,你可以选择使用 Github Pages 默认提供的域名 github.io 或者自定义域名来发布站点。

人在江湖飘,谁还没个用 GitHub Pages 搭建的免费静态博客呢。

假如你也想搭个博客装装逼,发发文章的话,这里安利下Gridea这款软件,按照官方文档和上手视频教程,技术小白应该也能比较轻松搞定。

扯回来,知道了GitHub Pages不仅可以搭博客,而且能单独部署网页,用来展示Web前端小项目这个“惊天大秘密”,古柳表示“山穷水复疑无路,柳暗花明又一村”,于是后面轻松捣鼓了下(此处省略1万字,具体过程下一篇再讲吧)也就实现了。

GitHub项目地址:DesertsX/yulequan-relations-graph,关系图谱体验地址:https://desertsx.github.io/yulequan-relations-graph/

当然由于关系图谱里涉及1281张明星图片,导致网页加载比较慢,体验效果不太好,考虑到大家估计没耐心等完全加载,因而简单录制了个体验的视频放B站上:bilibili -超酷炫的娱乐圈明星关系图谱,28s,简短到配的火影忍者BGM都结束的猝不及防,第一次也是没经验,这又是后话了。欢迎前去一看,BGM还是很振奋人心的,逃。

转载于:https://juejin.im/post/5d0662eee51d455d6d53581f

部署明星关系图谱那些事儿(GitHub Pages)相关推荐

  1. 不了解喜欢的明星有什么关系?教你用Neo4j 快速构建明星关系图谱,让你比他自己还了解

    前言 本文将带你用 neo4j 快速实现一个明星关系图谱,因为拖延的缘故,正好赶上又一年的4月1日,于是将文中的几个例子顺势改成了"哥哥"张国荣.正所谓"巧妇难为无米之炊 ...

  2. 用 Neo4j 快速构建明星关系图谱,你一定感兴趣

    今天做一下你们感兴趣的事情,带你们用 neo4j 构建明星关系图谱,这次爬取一下娱乐圈专业的娱乐综合门户网站下载"明星"页的"更多明星"里所有9141条数据. ...

  3. 一文教你用 Neo4j 快速构建明星关系图谱

    更多有趣项目及代码见于:DesertsX/gulius-projects 前言 本文将带你用 neo4j 快速实现一个明星关系图谱,因为拖延的缘故,正好赶上又一年的4月1日,于是将文中的几个例子顺势改 ...

  4. wordpress主题部署到github pages(调研+具体操作-还没有完成)

    首先wordpress本身是预期部署到云主机上的. github pages只是个静态网页. 根据[1] 强行把wordpress弄到github pages的话,会导致搜索文章的功能失效 ----- ...

  5. 博客除草计划(二):GitHub Pages Deploy Action 部署 hexo 博客

    Github Actions 是 Github 推出的自动化构建工具,一般来说,CI / CD (持续集成 / 持续部署)都需要自己的计算资源,但 Github Actions 提供免费的计算资源,这 ...

  6. InteractiveGraph 实现酷炫关系图谱之前瞻

    本文代码和数据等,会等下一篇实战文章更新后一起放在 github/DesertsX 上,敬请期待! 前言 话说之前片刻老哥(群主/组织负责人之一)在 ApacheCN 中文开源组织 的机器学习群(qq ...

  7. 使用DocFx生成文档网站并将其发布到GitHub Pages

    目录 介绍 DocFx安装 Visual Studio中的测试解决方案 使用docfx init设置DocFx 手动设置DocFx docfx.json配置文件的剖析 元数据部分 构建部分 docs文 ...

  8. 定制jekyll主题以及github pages部署完全总结

    写在前面 去年就已经开始折腾了jekyll+GitHub Pages的个人站点搭建, 一直以来的想法是自己从零开始进行前端网页的配置, 出发点是好的, 但是我发现最近已经没有时间让我折腾这些了. 恰好 ...

  9. 添加parcel 到cdh_使用Parcel捆绑Hyperapp应用并部署到GitHub Pages

    添加parcel 到cdh 在上一篇文章中,我们遇到了Hyperapp,这是一个微型库,可用于以类似于React或Vue的方式构建动态的单页Web应用程序. 在这篇文章中,我们将把事情提高一个档次. ...

最新文章

  1. go interface 转int_大神是如何学习 Go 语言之反射的实现原理
  2. 采用Flume实时采集和处理数据
  3. java图像处理之图像融合
  4. 聊聊微信的Dark模式
  5. 如何使用 SpringCloud 搭建服务注册中心?
  6. php网上商城拟解决的问题是,上次说的软件商城BUG,已找到问题,并解决~
  7. Python的安装与配置
  8. 金融用户画像的数据合规法律问题
  9. JAVA商城系统开发 VS PHP商城系统开发
  10. 免费数据集下载网站【dataset】
  11. 21年美赛F题-DEA模型和逻辑回归模型
  12. Arcgis 镶嵌栅格报错999999,且生成x3569458.tif文件
  13. 常见服务的默认端口_wuli大世界_新浪博客
  14. 大数据发展与情报资源整合的关系探索
  15. Miracle密码算法开源库(三)分析 :mrarth1.c
  16. 观大数据有感_观《大数据时代》有感
  17. 王左中右致出版商的信件稿
  18. 单片机实验七 NE555脉冲发生器实验(定时/计数器)
  19. Android幸运大转盘
  20. R语言导出CSV出现乱码的处理

热门文章

  1. 通过bat批量给文件添加前缀
  2. android 华为虚拟按键适配
  3. 一个多月的努力,FGC发生频率优化了400倍
  4. 开篇之作:变化,唯有变化是不变的吗?
  5. 养老保险每年交300元交十五年后,六十岁每月能领多少钱?
  6. ABAP如何修改SAP交货单的各个日期:计划、拣货、运输、过账
  7. 手把手教你做一个jsp+ssm+mysql实现的在线考试系统之在线考试系统源码+视频开发教程+参考论文+开题报告
  8. 取整(JSU-ZJJ)
  9. SQL 取前一天、一月、一年的时间
  10. bugku web篇