やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

GitHubリポジトリ一覧取得(Python版)

PythonGitHubリポジトリ一覧を取得してみた。

成果物

GitHub MEGA

Batch版

以前、バッチファイルで作成したときのコード

開発環境

WebService

ソースコード

はてなシンタックスハイライト表記。

#!python3
#encoding:utf-8

import requests
from furl import furl

username = 'YourUsername'
token = '0123456789012345678901234567890123456789'
timezone = 'Asia/Tokyo'
headers = {'Authorization': 'token ' + token, 'Time-Zone': timezone}

url = 'https://api.github.com/user/repos'
f = furl(url)
f.args['type'] = 'owner'
f.args['sort'] = 'created'
f.args['direction'] = 'desc'
f.args['per_page'] = '1000'
res = requests.get(f.url, headers=headers)

filename = "GitHub.{0}.Repositories.json".format(username)
file = open(filename, 'w', encoding="UTF-8")
file.write(res.text)
file.close()

GitHub埋め込み表記。

Pythonで学習したこと

キーワード 意味
requests.get HTTP/GET通信
requests.get(headers=var) HTTPヘッダ設定
furl.args['key'] = value URLパラメータ設定
furl.url URL取得
open Python3でのファイルオープン方法を確認した。
write Python3でのファイル書込方法を確認した。

所感

以前、バッチファイルで作成したときのコードと見比べると、可読性の良さが際立つ。Batchと比べるとライブラリは豊富だし、pipでネットからインストールできてすぐ使える。Python素敵。

取得したjsonをtsv, markdown化すれば一覧ページが作成できそう。 Pythonなら簡単にできたりしないかな。