-
-
Save zukowski/1452865 to your computer and use it in GitHub Desktop.
Export GitHub issues to a csv file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import csv | |
from github2.client import Github | |
# api settings for github | |
git_username = '' | |
git_api_token = '' | |
git_repo = '' | |
state = '' # 'open' or 'closed' | |
# csv name | |
csv_name = "git_hub_issues.csv" | |
def run_csv(): | |
""" | |
Export github issues into a csv format | |
""" | |
output_csv = csv.writer(open(csv_name, 'wb'), delimiter=',') | |
github = Github(username=git_username, api_token=git_api_token) | |
# csv headers | |
headers = [ | |
'id', | |
'title', | |
'body', | |
'state', | |
'creator', | |
'labels', | |
'created_at', | |
'updated_at', | |
'closed_at', | |
] | |
# write header rows | |
output_csv.writerow(headers) | |
# get the git issues and write the rows to the csv | |
git_issues = github.issues.list(git_repo, state) | |
for git_issue in git_issues: | |
print git_issue.title | |
labels = ' '.join(git_issue.labels) | |
# alot of these are blank because they are not really | |
# needed but if you need them just fill them out | |
issue = [ | |
git_issue.number, | |
git_issue.title.encode('utf8'), | |
git_issue.body.encode('utf8'), | |
git_issue.state, | |
git_issue.user, | |
labels, | |
git_issue.created_at, | |
git_issue.updated_at, | |
git_issue.closed_at, | |
] | |
output_csv.writerow(issue) | |
if __name__ == '__main__': | |
run_csv() |
same here! appreciate more info on that
@kilirobbs and @helenalt - This might be helpful: https://help.github.com/articles/creating-an-access-token-for-command-line-use/
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hey Daniel, wondered if you can help me out with the 'git_api_token' , not sure how to generate