• 互联网公司GitHub repo 语言使用情况


    转自: https://laike9m.com/blog/hu-lian-wang-gong-si-github-repo-yu-yan-shi-yong-qing-kuang,56/

    现在基本上所有国外大公司和国内部分公司都在 GitHub 上开源了一部分代码。统计一下这些代码的语言使用情况,多少可以反映公司内部对语言的偏好。很多公司流行的项目都是单独建一个 repo的,没办法统计,所以这里统计大家就随便看看吧。使用了 GitHub 的 API,只有不到四十行代码,所以直接贴在这里了,复制下来装个 requests 就可以直接运行:

    # coding: utf-8
    
    """
    统计大公司github上的organization 中repo 的语言使用情况
    """
    
    import requests
    from collections import defaultdict
    from os.path import join
    from pprint import pprint
    
    
    class GetLangStat():
    
        api_url = "https://api.github.com/orgs"
        ORGANIZATIONS = (
            'Microsoft', 'aws', 'google', 'twitter', 'facebook',
            'alibaba'
        )
        stats = {org: defaultdict(int) for org in ORGANIZATIONS}
    
        @classmethod
        def get_one_org_repos(cls, org):
            print(org)
            url = join(cls.api_url, org, 'repos')
            r = requests.get(url)
            for repo in r.json():
                cls.stats[org][repo['language']] += 1
    
        @classmethod
        def get_all_org_repos(cls):
            for org in cls.ORGANIZATIONS:
                cls.get_one_org_repos(org)
            pprint(cls.stats)
    
    
    if __name__ == '__main__':
        GetLangStat.get_all_org_repos()

    统计的公司包括 MS,amazon,google, twitter, facebook, 阿里。其中 amazon 似乎只开源了 aws 相关的代码,不过也算进来了。本来想找百度和腾讯的,结果发现百度没有一个统一的 organization,都是按产品散着的,腾讯则基本没有开源代码。。。

  • 相关阅读:
    数组
    循环(二)
    循环——笔记
    C#基础(四)
    C#基础(三)
    安卓帮助文档
    增加线程异步发送消息的方法二(Runnable)
    增加线程异步发送消息的方法一(Thread)
    获取下拉框的值
    获取表中字段最大值,并且保存在前台页面中
  • 原文地址:https://www.cnblogs.com/pinganzi/p/6700027.html
Copyright © 2020-2023  润新知