首页 > 其他分享 >批量同步 开源某一个公司或者个人 大量开源项目的小工具(避免手工一个一个的同步)

批量同步 开源某一个公司或者个人 大量开源项目的小工具(避免手工一个一个的同步)

时间:2024-01-05 15:34:36浏览次数:26  
标签:username 同步 name 批量 repos 开源 href result page

from requests.auth import HTTPBasicAuth
import requests
import os
import json

repos = set()

def download_repo(output, name, href):
    print(f'Cloning {name} {href}')
    os.system(f'git clone --depth 1  {href} "{output}/{name}"')


def get_bitbucket_repos(user,username, password):
    """Retrieves all bitbucket repos, handles pagination"""

    var_repos = []
    url = "https://api.bitbucket.org/2.0/repositories/{}".format(user)  #替换你需要同步的仓库的URL
    headers = {'Content-Type': 'application/json'}

    r = requests.get(url,  headers=headers) # auth=(username, password),
    page_result = json.loads(r.text)
    var_repos += page_result['values']

    while 'next' in page_result:
        url = page_result['next']
        r = requests.get(url,  headers=headers) #auth=(username, password),
        page_result = json.loads(r.text)
        var_repos += page_result['values']


    for r in var_repos:
        name = r['name']
        links = r['links']['clone']
        href = next(link['href'] for link in links if link['name'] == 'https')
        print(f'Found repo {name} {href}')
        repos.add((name, href))

    return var_repos

if __name__ == "__main__":
    import argparse

    #开源项目不需要 username 和 pwd ,私有项目才需要 
    user = "arlez80" 
    username =""
    pwd = ""
    output = "E:/txh/python/out"

    get_bitbucket_repos("arlez80",username,pwd)

    for repo in repos:
        download_repo(output, *repo)

 

标签:username,同步,name,批量,repos,开源,href,result,page
From: https://www.cnblogs.com/porter/p/17947364

相关文章

  • 产业认可 | 开源网安荣获 CCIA“2023 年度优秀会员单位”
    1月4日,“2023年度中国网络安全产业联盟成员大会暨理事会”在京召开,开源网安作为成员单位受邀出席本次大会。在会上,联盟发布了关于2023年度表彰先进的决定,作为中国软件安全领域的创领者,开源网安在技术、实践和创新领域均获联盟高度认可,被联盟授予“2023年度优秀会员单位”。中国网......
  • 马某 说c# 不开源,他是蠢还是坏?
    马某说c#不开源,他是蠢还是坏? 马某在视频 计算机主流开发语言的现状和未来3-5年的发展前景——Java、Golang、Python、C\C#\C++、JS、前端、AI、大数据、测试、运维、网络安全 点评各种语言,其中说到C#的时候,居然说C#是不开源的,而且还说局限于微软平台。一个不蠢的人深......
  • AI小蜜批量写作助手:多级指令,插件,GPTs满足不同写作需求
    为什么会开发这个脚本?爆文项目的核心是矩阵怼量具体怎么做这里介绍很清楚了:AI爆文撸流量主保姆级教程3.0+脚本写作教程(解放双手)我在刚做爆文项目时候,都是手动操作,复制指令,组合指令,粘贴,AI生成内容,然后发布。整个过程流程简单,全部重复劳动。但凡没点耐心,很容易就放弃了。重复......
  • D1-书生·浦语大模型全链路开源体系
    大模型成为发展通用人工智能的重要途径。“书生·浦语”是商汤科技、上海AI实验室联合香港中文大学、复旦大学及上海交通大学发布千亿级参数大语言模型。业务场景简单,如通用对话,直接将模型拿过来,运用promptengineering接入业务场景;部分微调,如LoRA;调用外部API,或与数据库交互→需......
  • Proxmox VE 8 安装开源监控平台Centreon 23
    作者:田逸(formyz)非常好用的开源监控系统Centreon从版本号21.40以后(包括Centreon21.40这个版本),不在提供ISO一键式安装包,取而代之的是在线脚本安装和VMware虚拟机或者OracleVirtualBox虚拟机镜像。本着开源的精神,以及对现有资源的有效利用,打算把VMware虚拟机形式的Centreon镜像,部......
  • 川普真会说中文?连嘴型都同步,用VideoReTalking一键生成你的AI播报员
    你能想到这种画面吗?霉霉在节目中用普通话接受采访,特朗普在老家用中文脱口秀,蔡明老师操着一口流利的英文调侃潘长江老师..这听起来似乎很魔幻,可如今全部由VideoReTalking实现了你只需要传入一个视频文件和音频文件,它会生成一个新的视频,在这个视频里,不仅人物的嘴型会与音频同步,就连表......
  • 世微 AP3471 8-30V 输出1.8V-28V 3.1A 同步降压恒压驱动器
    产品描述     AP3471是一款支持宽电压输入的同步降压电源管理芯片,输入电压8-30V范围内可实现3.1A的连续电流输出。通过调节FB端口的分压电阻,设定输出1.8V到28V的稳定电压。AP3471具有优秀的负载调整率和线电压调整率,在全范围内不超过±5%。AP3471采用电流......
  • 基于ETLCloud的MySQL到SqlServer实时同步解决方案
    背景在以下场景下会用到不同数据库的实时同步问题,比如:数据备份与容灾、多地域数据同步、数据共享与协作、数据分析与报表生成、实时监控与报警系统等等。大多数情况用到的就是数据备份了吧,相同的数据库还好,不同的数据库不能完全兼容就很麻烦,所以会用到SymmetricDS、Maxwell、Debezi......
  • JDBC 批量操作 in 的使用
     我们经常会有这种业务需求,根据一个条件集合去查询一张表的数据,比如:select*fromall_elementtwheret.task_idin(List<taskids>);在java语言中,我们需要用到JDBC来和数据库打交道,那么在JDBC中该如何处理这种需求呢?我们可以有如下几种处理方式方案一:写一个函数把参数集合......
  • 一款神仙级SpringCloud微服务开源项目,接私活吊到不行!(附源码)
    今天给大家推荐一个牛逼的接私活项目,SpringCloud微服务架构项目!一个由商业级项目升级优化而来的微服务架构,采用SpringBoot2.7、SpringCloud等核心技术构建,提供基于React和Vue的两个前端框架用于快速搭建企业级的SaaS多租户微服务平台。架构图项目介绍采用前后端分离的模式......