最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 简单撸了个 GitHub trending 爬取 API

    正文概述 转载于:掘金(Jianei)   2020-12-14   518

    简单撸了个 GitHub trending 爬取 API

    最近逛 G 站发现了一个优雅的 php 爬虫采集工具 QueryList,出于练习,顺手写了一个 Github trending 爬取 API,使用最新的 Lumen 8 实现,已部署到了Heroku,可以很方便地调用并集成到你的项目中。

    项目地址:Github Trending

    预览地址:中文区 PHP 项目最新趋势

    接口清单

    Trending Api

    接口地址:crawl-github-trending.herokuapp.com/github/tren…

    请求参数:

    • language:支持的编程语言;可以先调用下面的 Language 接口来查看支持哪些编程语言编码。
    • spoken_language:支持的语种编码,比如,zh 表示中文;可以先调用下面的 Spoken language 接口来查看支持哪些语种编码。
    • since:时间周期,支持 daily,weekly,monthly

    接口响应:

    {
        "status": "success",
        "code": 200,
        "message": "Success.",
        "data": [
            {
                "repo": "/Jiannei/lumen-api-starter",
                "description": "",
                "language": "php",
                "stars": "66,666",
                "forks": "666",
                "added_stars": "66 stars today",
                "spoken_language": "zh"
            }
        ],
        "error": []
    }
    
    

    举例:

    • 查询当天中文区的 php 项目趋势:crawl-github-trending.herokuapp.com/github/tren…
    • 查询本周中文区的 php 项目趋势:crawl-github-trending.herokuapp.com/github/tren…

    Spoken language

    接口地址:crawl-github-trending.herokuapp.com/github/spok…

    接口响应:

    {
        "status": "success",
        "code": 200,
        "message": "Success.",
        "data": [
            {
                "code": "zh",
                "name": "Chinese"
            },
            {
                "code": "en",
                "name": "English"
            }
        ],
        "error": []
    }
    
    

    Language

    接口地址:crawl-github-trending.herokuapp.com/github/lang…

    接口响应:

    {
        "status": "success",
        "code": 200,
        "message": "Success.",
        "data": [
            {
                "code": "c++",
                "name": "C++"
            },
            {
                "code": "html",
                "name": "HTML"
            },
            {
                "code": "java",
                "name": "Java"
            },
            {
                "code": "javascript",
                "name": "JavaScript"
            },
            {
                "code": "php",
                "name": "PHP"
            }
        ],
        "error": []
    }
    
    

    其他

    Packages

    • lumen-api-starter :基于最新版 Lumen,遵循 Repository & Service 架构的实践项目。
    • jae-jae/querylist :优雅的渐进式PHP采集框架,让采集更简单一点。
    • spatie/valuestore :维护配置到 json文件。

    维护

    爬取规则维护在 resources/crawl/github.json 文件中,如果接口失效,欢迎提交 pull request,或者联系我 longjian.huang@foxmail.com 进行更新,方便后续其他同学调用。


    起源地下载网 » 简单撸了个 GitHub trending 爬取 API

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元