21日零点,卡塔尔海湾球场吹响了第22届世界杯的第一声哨。四年一度,足球以独特的方式将每个人相连。
万能的开源通通可以安排!
为了帮助大家找到更好的世界杯打开方式,OpenSCA项目组搜罗了一些与世界杯相关的开源项目。一起来看看
在Github搜索“worldcup”,可以看到来自世界各地的共3000+个开源仓库;其中JS占比近20%,HTML紧随其后,Java、Python也榜上有名。
Gitee上“worldcup”相关仓库共38个,“世界杯”46个,其中使用最多的编程语言依次是Android、Java、JS和Python;可以看出,小程序技能树的点亮还是较为明显的。
当前很多优秀的体育APP和新闻网站都有非常成熟的战报体系,一场比赛从前瞻到实时直播/更新数据再到回顾,可以做得非常迅速完整。
但如果要一眼快速了解一场或多场比赛的关键信息,花里胡哨的战报就不再适用了。此外,如果想快速get往届(特别是10年南非世界杯之前)世界杯某场比赛的比分和进球时间等信息,搜出来的大概率都是过期的网页报道和需要播放的视频,费时又费力。
就简洁实用完整这几个方向来说,开源的世界杯数据库和看板还是很香的~
openfootball/worldcup
仓库地址:
https://github.com/openfootball/worldcup
openfootball/worldcup是一个开源数据库,收录了自1930年以来的世界杯比赛的分组、比赛日,所有比赛的时间、对阵双方、球场、进球球员及时间,还包括补时情况、点球等细节。
图1 openfootball / worldcup示例
经OpenSCA检测,该项目未引入开源组件。下图为openfootball/worldcup检测结果。
estiens / world_cup_json
仓库地址:
https://github.com/openfootball/worldcup
estiens/world_cup_json 是一个抓取世界杯比赛数据并输出为JSON的后端工具,由44位贡献者共同维护。它收录了从2010年世界杯及预选赛起每一场比赛的所有详细数据,2022年卡塔尔世界杯的数据也在持续更新中。
21日使用该项目时,获得了以下输出结果:
经OpenSCA检测,该项目共包含101个开源组件,其中2个组件风险等级为中危,共有2个漏洞,下图为检测结果。
raminmr / free-api-worldcup2022
仓库地址:
https://github.com/raminmr/free-api-worldcup2022
raminmr/free-api-worldcup2022是一个实时获取2022卡塔尔世界杯比赛及排名信息的API工具,使用简单、信息详细,还包含了对战双方的国旗。
下图为raminmr / free-api-worldcup2022请求返回示例
经OpenSCA检测,该项目未引入开源组件。下图为raminmr/free-api-worldcup2022检测结果。
cedricblondeau/world-cup-2018-cli-dashboard
仓库地址:
https://github.com/cedricblondeau/world-cup-2018-cli-dashboard
cedricblondeau/world-cup-2018-cli-dashboard是一款提供2018年俄罗斯世界杯CLI数据看板的工具,还支持docker化部署。虽然俄罗斯世界杯已成往事,但仍可通过这个看板获取相关比赛详细信息。进阶一点的玩法还可以使用源码二开,抓取卡塔尔世界杯的比赛数据并以看板形式呈现,谁看了不说声酷炫。
下图为cedricblondeau / world-cup-2018-cli-dashboard示例
经OpenSCA检测,该项目共包含开源组件1319个,无漏洞。下图为cedricblondeau/world-cup-2018-cli-dashboard检测结果。
独乐乐不如众乐乐。然而受疫情影响,三五好友相聚一处看球侃球恐怕难以实现。通过共享屏幕和实时语音,四舍五入也算共同见证每个精彩瞬间了。
HeartLinked / TalkAboutTheWorldCup
项目地址:
https://github.com/HeartLinked/TalkAboutTheWorldCup
TalkAboutTheWorldCup(一起来侃世界杯)可以实时共享手机屏幕,用户之间可以通过摄像头实时通话,也可通过内置聊天框打字聊天。实时共享可是个好东西,只需购买一个视频网站或转播平台的VIP,就能真正实现一人充钱大家享受。
经OpenSCA检测,该项目共有8个组件,其中1个组件风险等级为中危,共有2个漏洞。下图为HeartLinked/TalkAboutTheWorldCup检测结果
竞猜是重大赛事期间热门的娱乐项目,其实现的技术逻辑也很令人好奇。开源就为解析竞猜程序背后的技术逻辑提供了非常好的素材和机会。
syxolk / euro2016
项目地址:
https://github.com/syxolk/euro2016
syxolk/euro2016是一个开源的Web服务,竞猜可以赢得积分,最终获得象征“球赛预测王”的小皇冠标识;其实现逻辑里还引入了比分和积分的关联关系。
经OpenSCA检测,该项目共包含416个开源组件,其中1个组件风险等级为中危险,共有1个漏洞。下图为syxolk/euro2016检测结果。
尝试使用这些项目或对它们进行二开前,记得使用OpenSCA进行一次软件成分分析;只需通过一条命令即可掌握项目中开源组件的漏洞及风险情况,还支持在本地输出JSON、HTML格式的检测报告及SPDX格式的SBOM清单。
除了上文展示的组件及漏洞结果概览,OpenSCA提供的报告中还会展示组件及漏洞详情。示例如下图,记录了在estiens/world_cup_json中检出的一个中危组件及其包含的漏洞详细信息。下图为OpenSCA HTML报告示例。
本期OpenSCA项目组整理了若干与世界杯相关的开源项目。若还有其他开源项目推荐或二开尝试分享,欢迎随时与我们联系~
感谢每一位开源社区成员对OpenSCA的支持和贡献。