1. 程式人生 > 實用技巧 >python通過介面獲取gitlab專案資訊

python通過介面獲取gitlab專案資訊

參考資料:https://python-gitlab.readthedocs.io/en/stable/gl_objects/mrs.html

這是python-gitlab介面文件,用作參考

首先做一些準備工作

1 import gitlab
2 
3 url = 'http://伺服器地址/'
4 private_token = "私人token"
5 
6 
7 gl = gitlab.Gitlab(url,private_token ,api_version='4')
8 gl.auth()
9 f = open(r'檔案的絕對路徑', 'a')

1.首先需要引入gitlab模組,使用pip install python-gitlab即可安裝

2.填寫好url,到伺服器地址即可

3.填寫好private_token,獲取方法可參考https://blog.csdn.net/zangxueyuan88/article/details/81195666

4.獲取gitlab資訊

5.進行認證

6.這一步是用來將獲取到的資訊存為文件

接下來就可以參考介面文件,獲取需要的資訊了,例如

1 def ListProJectList():
2     "get all the project lists"
3     projects = gl.projects.list()
4     for project in projects:
5         print
(project) 6 return projects 7 8 ListProJectList()

會列出所有專案資訊,但返回值是

<class 'gitlab.v4.objects.Project'> => {'id': 67, 'description': '', 'name':...}
<class 'gitlab.v4.objects.Project'> => {'id': 53, 'description': '', 'name':...}

這樣的形式,可以通過project.id或者project.attributes["id"]來獲得特定的內容

關於attributes方法,在上段程式碼中如果print(project.attributes)那麼輸出結果就為

 {'id': 67, 'description': '', 'name':...}
 {'id': 53, 'description': '', 'name':...}

關於文件中專案discussion資訊的獲取,如果專案中有未完成的discussion resolved,則可以獲取到對評論的評論,如果沒有discussion resolved的提示,就只能獲取到評論

若有小夥伴有對此的解決辦法,歡迎留言指導,感謝!