分析:Github上排名前6的Python项目
2019-04-17 本文已影响352人
字节的风
分析:Github上排名前6的Python项目
2019-04-17 21-10-56屏幕截图.png1.
排名第一:awesome-python
用途:一个Python各个好用的库的名单。
点评:2019年最用心良苦Pythoner奖!
2.
排名第二:system-design-primer
用途:学习如何设计大型系统,为系统设计的面试做准备。
点评:“为了面试”,也是醉了......
3.
排名第三:public-apis
用途:一个优质网络API名单。
点评:果断收藏!
4.
排名第四:models
用途:This repository contains a number of different models implemented in TensorFlow
点评:AIer们可以收藏一下。
5.
排名第五:flask
用途:Flask is a lightweight WSGI web application framework. (其实就是你熟悉的那个Flask)
点评:你会用Flask吗?别回答“Python是啥?”。
6.
排名第六:thefuck
用途:Fuck you!Fuck me......难道是一个抗议项目?不!这个项目太好用了......
如果输入了错误的控制台命令,下一条命令输入
fuck
就可以帮你修正命令并再次运行。
点评:真好用!不知道你的产品经理看见你一个劲输入fuckfuckfuck不知道他心里会是什xiang么kai滋chu味ni。
图表是怎么做出来的?源代码:
import requests
import pygal
# 获得网页数据
url = 'https://api.github.com/search/repositories?q=language:python&sort=stars'
r = requests.get(url)
print('Status code:' + str(r.status_code))
# 转化为可读取的格式
response_dict = r.json()
# print(response_dict.keys())
# print(response_dict['total_count'])
# 获得主要数据
repo_dicts = response_dict['items']
# print(len(repo_dicts))
# repo_dict = repo_dicts[0]
# 统计出可以制作图表的数据
names, iitems = [], []
for repo_dict in repo_dicts:
# print('\nName:', repo_dict['name'])
# print('Owner:', repo_dict['owner']['login'])
# print('Stars:', repo_dict['stargazers_count'])
# print('Reposiory:', repo_dict['html_url'])
# print('Created:', repo_dict['created_at'])
# print('Updated:', repo_dict['updated_at'])
# print('Descripion:', repo_dict['description'])
names.append(repo_dict['name'])
plot_dict = {
'value' : repo_dict['stargazers_count'],
'label' : repo_dict['description'],
'xlink' : repo_dict['html_url'],
}
iitems.append(plot_dict)
# print(len(repo_dict))
# for key in sorted(repo_dict.keys()):
# print(key)
# 设置图表格式、颜色、标签
chart = pygal.Bar(x_label_rotation=45, show_legend=False)
chart.title = 'Github上Python语言中30大最受欢迎的项目的星星数量排名'
chart.x_labels = names
# 填入数据
chart.add('', iitems)
chart.render_to_file('python_repos.svg') # 保存图表
学习了一下Eric Matthes。