Github API v2 library for Python
Project description
- Version:
- 0.1.2
This is an experimental python library implementing all of the features available in version 2 of the Github API.
Note This software is not finished. And is likely to change in the near future.
Introduction
You should read the developer documentation for the Github API first.
Installation
You can install python-github2 either via the Python Package Index (PyPI) or from source.
To install using pip,:
$ pip install python-github2
To install using easy_install,:
$ easy_install python-github2
If you have downloaded a source tarball you can install it by doing the following,:
$ python setup.py build # python setup.py install # as root
Creating a request
>>> from github2.client import Github >>> github = Github(username="ask", api_token=".......")
Users
Searching
>>> results = github.users.search("foo")
Getting User Information
>>> user = github.users.show("ask") >>> user.name "Ask Solem"
Getting User Network
>>> github.users.followers("ask") ['greut', 'howiworkdaily', 'emanchado', 'webiest']>>> github.users.following("ask") ['sverrejoh', 'greut', 'jezdez', 'bradleywright', 'ericflo', 'howiworkdaily', 'emanchado', 'traviscline', 'russell']
Following Network
>>> github.users.follow("jezdez")>>> github.users.unfollow("jezdez")
Issues
List a Projects Issues
>>> github.issues.list("ask/chishop", state="open") >>> github.issues.list("ask/chishop", state="closed")
View an Issue
>>> issue = github.issues.show("ask/chishop", 1) >>> issue.title 'Should not be able to upload same version twice.'
Open and Close Issues
>>> new_issue = github.issues.open("ask/chishop", title="New bug", ... body="This is a test bug") >>> new_issue.number 2>>> github.issues.close("ask/chishop", new_issue.number)
Add and Remove Labels
>>> github.issues.add_label("ask/chishop", 2, "important")>>> github.issues.remove_label("ask/chishop", 2, "important")
Network
Network Meta
>>> github.get_network_meta("ask/chishop")
Network Data
>>> github.get_network_data("schacon/simplegit", ... nethash="fa8fe264b926cdebaab36420b6501bd74402a6ff")
Repository
Searching Repositories
>>> repositories = github.repos.search("django")
Show Repo Info
>>> repo = github.repos.show("schacon/grit") >>> repo.homepage "http://grit.rubyforge.org/"
List All Repositories
# By default lists all repos for the current user. >>> repos = github.repos.list()
>>> repos = github.repos.list("schacon")
Watching Repositories
>>> github.repos.watch("schacon/grit")>>> github.repos.unwatch("schacon/grit")
Forking Repositories
>>> fork = github.repos.fork("schacon/grit")
Creating and Deleting Repositories
>>> new_repo = github.repos.create(name, description, homepage, ... public=True)>>> github.repos.delete(name)
Repository Visibility
>>> github.repos.set_private("ask/chishop")>>> github.repos.set_public("ask/chishop")
Collaborators
>>> collabs = github.repos.list_collaborators("ask/chishop")>>> github.repos.add_collaborator("ask/chishop", "schacon")>>> github.repos.remove_collaborator("ask/chishop", "schacon")
Network
>>> github.repos.network("ask/chishop")
Repository Refs
Get a list of tags
>>> tags = github.repos.tags("ask/chishop")Get a list of remote branches
>>> branches = github.repos.branches("ask/chishop")
Commit
Listing Commits on a Branch
>>> commits = github.commits.list("mojombo/grit", "master")
Listing Commits for a File
>>> commits = github.commits.list("mojombo/grit", "master", ... file="grit.gemspec")
Showing a Specific Commit
>>> commit = github.commits.show("mojombo/grit", ... sha="5071bf9fbfb81778c456d62e111440fdc776f76c")
Object
Trees
>>> tree = github.get_tree(project, tree_sha)
Blobs
>>> blob = github.get_blob_info(project, tree_sha, path)
License
This software is licensed under the New BSD License. See the LICENSE file in the top distribution directory for the full license text.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file github2-0.1.2.tar.gz
.
File metadata
- Download URL: github2-0.1.2.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1861d801c9b31254c63a0723cf756bb6ba9a337b2081e5f06f0fe97bdac1f0b5 |
|
MD5 | 7983d7f24f2fbf9b4f18cef6bb101053 |
|
BLAKE2b-256 | c4b20bd802efabbe3c6f0b88063f9b10241ef8ae5e75535c1dcc5b345ac11c7c |