GitHub 给了开发者相当丰富的 API 接口 https://developer.github.com/v3/,包括认证,搜索,活动等接口,但就是没有提供获取 Trending 的接口。因此,需要自己来实现这个api

获取热门项目

请求结果:

{"success": true,"count": 25,"msg": [

{

# 仓库名称"repo": "Librefox",

# 项目语言"language": "JavaScript",

# 项目拥有着"user": "intika",

# 项目简介"about": "Librefox: Firefox with privacy enhancements",

# 项目地址"link": "https://github.com/intika/Librefox",

# 项目star数"stars": "495",

# 项目fork数"forks": "14",

# 新增star数"new_stars": "117 stars today",

# 项目维护者头像地址"avatars": ["https://avatars2.githubusercontent.com/u/6892180?s=40&v=4","https://avatars0.githubusercontent.com/u/152493?s=40&v=4","https://avatars3.githubusercontent.com/u/2353785?s=40&v=4","https://avatars3.githubusercontent.com/u/38463143?s=40&v=4"]

},

...

获取热门开发者

{

success:true,

count:25,

msg: [

{

# 开发者用户名

username:"thunlp (THUNLP)",

# 开发者头像

avatar:"https://avatars1.githubusercontent.com/u/18389035?s=96&v=4",

# 开发者主页

userlink:"https://github.com/thunlp",

# 开发者热门项目

repo:"NRLPapers",

# 热门项目简介

repo_about:"Must-read papers on network representation learning (NRL) / network embedding (NE)"},

获取某种语言或开发者在某段时间内的trending

请求路径

请求参数:

lang 语言, 参数来自config.py中的 GithubLanguages

since 日期,参数有 daily,weekly, monthly

daily 每天     weekly 每周   monthly 每月

获取GitHub上的所有trending 语言。

返回结果:

{"success": true,"count": 490,"msg": ["Zimpl","Zephir","YASnippet","YARA","YANG","YAML","Yacc","Xtend","XSLT","XS",

...

请求出错

当请求的lang或since不存在时,请求出错。错误结果为:

{"success": false,"count": 0,"msg": "请求错误"}

安装项目代码

1.  git clone https://github.com/ngauerh/GithubTrendingApi.git

2.  pip install -r requirements.txt

3 . 修改config.py 文件

SinceDate: 不能更改

DB:  数据库配置

SERVER_PORT:  要运行的api服务的端口号

CRAWL_INTERVAL:  抓取间隔时间(实际间隔时间会曾经一个多小时)

4.  运行models.py 生成数据表(数据库格式需要为utf8mb4,如果格式为utf8则数据存入时会出错)

5.  运行run.py

python github api_用python写一个GitHub Trending Api相关推荐

  1. python restful api_用Python语言写一个restful API

    本文主要向大家介绍了用Python语言写一个restful API,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. """ package.modul ...

  2. 【python实战】使用 pygame 写一个 flappy-bird 类小游戏 | 涉及思路+项目结构+代码详解 | 新手向

    基于 pygame 的 Amazing-brick 实现 本文涉及三个 .py 文件: amazing_brick / amazing_brick_utils.py/ wrapped_amazing_ ...

  3. python监控某个程序_写一个python的服务监控程序

    写一个python的服务监控程序 前言: Redhat下安装Python2.7 rhel6.4自带的是2.6, 发现有的机器是python2.4. 到python网站下载源代码,解压到Redhat上, ...

  4. python关于通讯录模型_python写一个通讯录 - wtwexile - 博客园

    python写一个通讯录 闲着没事,用python写一个模拟通讯录,要求要实现常用的通讯录的功能,基本流程如下 接下来就按照这个流程实现各个模块的功能 1. 定义一个类,并初始化 1 import j ...

  5. python播放wav文件_python3 写一个WAV音频文件播放器的代码

    环境:ubuntu 16.04 python3.5 pycharm 包 : wave pyaudio sys 上代码:AudioPlayer.py # coding:utf-8 # author:ki ...

  6. Python:教你如何写一个测量网速的小工具

    hello,大家好,我是wangzirui32,今天我们来学习如何写一个测量网速的小工具,开始学习吧! 1. pip安装 这个项目主要依赖speedtest_cli模块,pip安装: pip inst ...

  7. python 双色球 输出到txt_python3 - 写一个生成双色球号码的一个程序,生成的号码写到文件里面...

    写一个生成双色球号码的一个程序,生成的号码写到文件里面 # 中奖号码由6个红色球号码和1个蓝色球号码组成 # 篮球范围:01-16 # 红球范围:01-33 def swq(num): random. ...

  8. 小白实战:如何通过python requests 库xpath工具写一个抓取小网站图片的小爬虫

    有点爱好的你,偶尔应该会看点妹子图片,最近小网站经常崩溃消失,不如想一个办法本地化吧,把小照片珍藏起来! 首先,准备一个珍藏的小网站,然后就可以开始啦! 完整代码在文末哦!! tips:vx:hsrj ...

  9. 蹦起来!Python 用物理引擎Pymunk写一个解压小游戏

    用鼠标创建小球,一个蹦来蹦去的解压小游戏-- 本次需要的外置包:pygame,pymunk,cmd运行该命令安装: pip install pygame pip install pymunk 首先,导 ...

  10. python中api_通过Python中的API查找相关的工作技能

    python中api 工作技能世界 (The World of Job Skills) So you want to figure out where your skills fit into tod ...

最新文章

  1. centos7离线安装boost
  2. hushen 300
  3. 最短路径Dijkstra讲解,工具包使用 python
  4. python函数-函数进阶
  5. mysql 管理instance_对于多instance安装的MYSQL来说,起停的过程相对复杂,可以定义一些简单的脚本来简化日常的管理。1# 环境变量脚本[mysql@mysql01 scri...
  6. MessageFormat 格式化String
  7. android 自定义心电图,Android自定义 View 练习 —— 心电图的绘制
  8. [原创]Ladon7.5大型内网渗透扫描器Cobalt Strike
  9. 最新蓝奏云php直链源码,蓝奏云直链源码
  10. 一进制存在吗?为什么?
  11. 连接Oracle报错 ORA-00257
  12. 锂离子电池被动均衡深度理解
  13. 多思计算机组成原理实验八:简单模型机实验
  14. iOS 开发 - 播放器Demo开发记录
  15. 多角度分析如何解决建筑/基础设施/三维可视化/BIM设计图形工作站慢卡顿问题
  16. 天美服务器未响应,百万玩家进不去游戏,王者荣耀再上热搜,天美会送荣耀水晶吗?...
  17. 阿米云销CRM V2.0.0 正式公测
  18. Android系统的开机画面显示过程分析(5)
  19. Ubuntu20.04 卸载cuda 11.0
  20. C语言移位操作符和位操作符

热门文章

  1. 在3A游戏公司工作是什么体验?30岁3D艺术家经验分享
  2. 百度地图_设置缩放级别
  3. UDP网络通信的收,发包
  4. 构建绵羊(非常见物种)BSgenome参考基因组
  5. 局域网arp攻击_谈谈电子欺骗中的ARP欺骗
  6. scrcpy源码阅读及在Ubuntu上的实现(三)——使用ZeroMQ传输yuv数据并使用Python订阅
  7. jSignature 横屏_怎么把视频上下弄背景?教你抖音横屏视频上下填充剪辑方法
  8. Centos7.6分区、格式化、自动挂载磁盘
  9. Less系列之嵌套(Nesting)
  10. 机器学习中神经网络,支持向量机以及贝叶斯分类器总结