Github repository information

Github API:

Retrieve information about repositories, users, etc.

https://docs.github.com/en/rest?apiVersion=2022-11-28

import requests

url_api_json = 'https://api.github.com/search/repositories?q=stars:%3E1&sort=stars'

req = requests.get(url_api_json)
req
<Response [200]>

If the response code is OK, we check its content

req.content[:1000] # looks like a json file
b'{"total_count":8632626,"incomplete_results":false,"items":[{"id":28457823,"node_id":"MDEwOlJlcG9zaXRvcnkyODQ1NzgyMw==","name":"freeCodeCamp","full_name":"freeCodeCamp/freeCodeCamp","private":false,"owner":{"login":"freeCodeCamp","id":9892522,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk4OTI1MjI=","avatar_url":"https://avatars.githubusercontent.com/u/9892522?v=4","gravatar_id":"","url":"https://api.github.com/users/freeCodeCamp","html_url":"https://github.com/freeCodeCamp","followers_url":"https://api.github.com/users/freeCodeCamp/followers","following_url":"https://api.github.com/users/freeCodeCamp/following{/other_user}","gists_url":"https://api.github.com/users/freeCodeCamp/gists{/gist_id}","starred_url":"https://api.github.com/users/freeCodeCamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/freeCodeCamp/subscriptions","organizations_url":"https://api.github.com/users/freeCodeCamp/orgs","repos_url":"https://api.github.com/users/freeCodeCamp/repos","events_url":"https'
req.json()['items'][0]
{'id': 28457823,
 'node_id': 'MDEwOlJlcG9zaXRvcnkyODQ1NzgyMw==',
 'name': 'freeCodeCamp',
 'full_name': 'freeCodeCamp/freeCodeCamp',
 'private': False,
 'owner': {'login': 'freeCodeCamp',
  'id': 9892522,
  'node_id': 'MDEyOk9yZ2FuaXphdGlvbjk4OTI1MjI=',
  'avatar_url': 'https://avatars.githubusercontent.com/u/9892522?v=4',
  'gravatar_id': '',
  'url': 'https://api.github.com/users/freeCodeCamp',
  'html_url': 'https://github.com/freeCodeCamp',
  'followers_url': 'https://api.github.com/users/freeCodeCamp/followers',
  'following_url': 'https://api.github.com/users/freeCodeCamp/following{/other_user}',
  'gists_url': 'https://api.github.com/users/freeCodeCamp/gists{/gist_id}',
  'starred_url': 'https://api.github.com/users/freeCodeCamp/starred{/owner}{/repo}',
  'subscriptions_url': 'https://api.github.com/users/freeCodeCamp/subscriptions',
  'organizations_url': 'https://api.github.com/users/freeCodeCamp/orgs',
  'repos_url': 'https://api.github.com/users/freeCodeCamp/repos',
  'events_url': 'https://api.github.com/users/freeCodeCamp/events{/privacy}',
  'received_events_url': 'https://api.github.com/users/freeCodeCamp/received_events',
  'type': 'Organization',
  'site_admin': False},
 'html_url': 'https://github.com/freeCodeCamp/freeCodeCamp',
 'description': "freeCodeCamp.org's open-source codebase and curriculum. Learn to code for free.",
 'fork': False,
 'url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp',
 'forks_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/forks',
 'keys_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/keys{/key_id}',
 'collaborators_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/collaborators{/collaborator}',
 'teams_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/teams',
 'hooks_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/hooks',
 'issue_events_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/issues/events{/number}',
 'events_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/events',
 'assignees_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/assignees{/user}',
 'branches_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/branches{/branch}',
 'tags_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/tags',
 'blobs_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/git/blobs{/sha}',
 'git_tags_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/git/tags{/sha}',
 'git_refs_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/git/refs{/sha}',
 'trees_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/git/trees{/sha}',
 'statuses_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/statuses/{sha}',
 'languages_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/languages',
 'stargazers_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/stargazers',
 'contributors_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/contributors',
 'subscribers_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/subscribers',
 'subscription_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/subscription',
 'commits_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/commits{/sha}',
 'git_commits_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/git/commits{/sha}',
 'comments_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/comments{/number}',
 'issue_comment_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/issues/comments{/number}',
 'contents_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/contents/{+path}',
 'compare_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/compare/{base}...{head}',
 'merges_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/merges',
 'archive_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/{archive_format}{/ref}',
 'downloads_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/downloads',
 'issues_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/issues{/number}',
 'pulls_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/pulls{/number}',
 'milestones_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/milestones{/number}',
 'notifications_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/notifications{?since,all,participating}',
 'labels_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/labels{/name}',
 'releases_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/releases{/id}',
 'deployments_url': 'https://api.github.com/repos/freeCodeCamp/freeCodeCamp/deployments',
 'created_at': '2014-12-24T17:49:19Z',
 'updated_at': '2024-04-08T21:05:26Z',
 'pushed_at': '2024-04-08T19:55:26Z',
 'git_url': 'git://github.com/freeCodeCamp/freeCodeCamp.git',
 'ssh_url': 'git@github.com:freeCodeCamp/freeCodeCamp.git',
 'clone_url': 'https://github.com/freeCodeCamp/freeCodeCamp.git',
 'svn_url': 'https://github.com/freeCodeCamp/freeCodeCamp',
 'homepage': 'http://contribute.freecodecamp.org/',
 'size': 428423,
 'stargazers_count': 386602,
 'watchers_count': 386602,
 'language': 'TypeScript',
 'has_issues': True,
 'has_projects': True,
 'has_downloads': True,
 'has_wiki': False,
 'has_pages': False,
 'has_discussions': False,
 'forks_count': 35166,
 'mirror_url': None,
 'archived': False,
 'disabled': False,
 'open_issues_count': 329,
 'license': {'key': 'bsd-3-clause',
  'name': 'BSD 3-Clause "New" or "Revised" License',
  'spdx_id': 'BSD-3-Clause',
  'url': 'https://api.github.com/licenses/bsd-3-clause',
  'node_id': 'MDc6TGljZW5zZTU='},
 'allow_forking': True,
 'is_template': False,
 'web_commit_signoff_required': False,
 'topics': ['careers',
  'certification',
  'community',
  'curriculum',
  'd3',
  'education',
  'freecodecamp',
  'hacktoberfest',
  'javascript',
  'learn-to-code',
  'math',
  'nodejs',
  'nonprofits',
  'programming',
  'react',
  'teachers'],
 'visibility': 'public',
 'forks': 35166,
 'open_issues': 329,
 'watchers': 386602,
 'default_branch': 'main',
 'score': 1.0}