53 lines
1.6 KiB
Markdown
53 lines
1.6 KiB
Markdown
# codescrape
|
|
|
|
Version 1.0
|
|
|
|
By: Nathan Adams
|
|
|
|
License: MIT
|
|
|
|
## Description
|
|
|
|
This library is to be used to archive project data. Since with the announcement of Google Code going to archive only - I wanted to create a library where you can grab source data before it is gone forever.
|
|
|
|
Use cases include:
|
|
|
|
Archive projects due to:
|
|
|
|
- Hosting service shutting down
|
|
- Authorities sending cease-and-desist against provider/project
|
|
- Historical/research/ or educational purposes
|
|
|
|
## Usage
|
|
|
|
Currently srchub and google code are supported. To use:
|
|
|
|
from services.srchub import srchub
|
|
shub = srchub()
|
|
projects = shub.getProjects()
|
|
|
|
or for google code
|
|
|
|
from services.googlecode import googlecode
|
|
gcode = googlecode()
|
|
project = gcode.getProject("android-python27")
|
|
|
|
Sourcehub library will pull all public projects since this list is easily accessed. Google Code does not have a public list persay. And I didn't want to scrape the search results, so I developed it to require you to pass in the project name. If you were to get your hands on a list of google code projects you could easily loop through them:
|
|
|
|
from services.googlecode import googlecode
|
|
gcode = googlecode()
|
|
for project in someProjectList:
|
|
project = gcode.getProject(project)
|
|
# do something with project
|
|
|
|
the project data structure is as follows:
|
|
|
|
project
|
|
|
|
- getRepoURL() -> Returns the URL of the repo
|
|
- getRepoType() -> Returns the type of repo (git, hg, or SVN)
|
|
- getReleases() -> Returns all downloads related to the project
|
|
- getIssues() -> Returns open issues
|
|
- getWikis() -> Returns wikis
|
|
|