mirror of
https://github.com/LukeHagar/pypistats.dev.git
synced 2025-12-09 12:47:48 +00:00
update readme; better api
This commit is contained in:
16
README.rst
16
README.rst
@@ -5,3 +5,19 @@ A simple analytics dashboard for aggregate data on PyPI downloads. PyPI Stats
|
|||||||
is built using Flask with plotly.js and deployed to AWS elasticbeanstalk.
|
is built using Flask with plotly.js and deployed to AWS elasticbeanstalk.
|
||||||
|
|
||||||
`PyPI Stats <https://pypistats.org/>`_
|
`PyPI Stats <https://pypistats.org/>`_
|
||||||
|
|
||||||
|
GitHub OAuth
|
||||||
|
------------
|
||||||
|
|
||||||
|
PyPI Stats has an integration with GitHub so you can track install data on the
|
||||||
|
packages you maintain.
|
||||||
|
|
||||||
|
`User page <https://pypistats.org/user>`_
|
||||||
|
|
||||||
|
JSON API
|
||||||
|
--------
|
||||||
|
|
||||||
|
PyPI Stats provides a simple JSON API to retrieve aggregate download stats
|
||||||
|
and time histories of pypi packages.
|
||||||
|
|
||||||
|
`JSON API <https://pypistats.org/api>`_
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</p>
|
</p>
|
||||||
<h2>Endpoints</h2>
|
<h2>Endpoints</h2>
|
||||||
<h3>/api/<package>/recent</h3>
|
<h3>/api/package/<package>/recent</h3>
|
||||||
<p>Retrieve the aggregate download quantities for the last day/week/month.
|
<p>Retrieve the aggregate download quantities for the last day/week/month.
|
||||||
</p>
|
</p>
|
||||||
<p>Query arguments:
|
<p>Query arguments:
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
"type": "recent_downloads"
|
"type": "recent_downloads"
|
||||||
}</code></pre>
|
}</code></pre>
|
||||||
</p>
|
</p>
|
||||||
<h3>/api/<package>/overall</h3>
|
<h3>/api/package/<package>/overall</h3>
|
||||||
<p>Retrieve the aggregate daily download time series with or without mirror downloads.
|
<p>Retrieve the aggregate daily download time series with or without mirror downloads.
|
||||||
</p>
|
</p>
|
||||||
<p>Query arguments:
|
<p>Query arguments:
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
"type": "overall_downloads"
|
"type": "overall_downloads"
|
||||||
}</code></pre>
|
}</code></pre>
|
||||||
</p>
|
</p>
|
||||||
<h3>/api/<package>/python_major</h3>
|
<h3>/api/package/<package>/python_major</h3>
|
||||||
<p>Retrieve the aggregate daily download time series by Python major version number.
|
<p>Retrieve the aggregate daily download time series by Python major version number.
|
||||||
</p>
|
</p>
|
||||||
<p>Query arguments:
|
<p>Query arguments:
|
||||||
@@ -113,7 +113,7 @@
|
|||||||
"type": "python_major_downloads"
|
"type": "python_major_downloads"
|
||||||
}</code></pre>
|
}</code></pre>
|
||||||
</p>
|
</p>
|
||||||
<h3>/api/<package>/python_minor</h3>
|
<h3>/api/package/<package>/python_minor</h3>
|
||||||
<p>Retrieve the aggregate daily download time series by Python minor version number.
|
<p>Retrieve the aggregate daily download time series by Python minor version number.
|
||||||
</p>
|
</p>
|
||||||
<p>Query arguments:
|
<p>Query arguments:
|
||||||
@@ -181,7 +181,7 @@
|
|||||||
"type": "python_minor_downloads"
|
"type": "python_minor_downloads"
|
||||||
}</code></pre>
|
}</code></pre>
|
||||||
</p>
|
</p>
|
||||||
<h3>/api/<package>/system</h3>
|
<h3>/api/package/<package>/system</h3>
|
||||||
<p>Retrieve the aggregate daily download time series by operating system.
|
<p>Retrieve the aggregate daily download time series by operating system.
|
||||||
</p>
|
</p>
|
||||||
<p>Query arguments:
|
<p>Query arguments:
|
||||||
@@ -232,4 +232,4 @@
|
|||||||
}</code></pre>
|
}</code></pre>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ def api():
|
|||||||
return render_template("api.html", user=g.user)
|
return render_template("api.html", user=g.user)
|
||||||
|
|
||||||
|
|
||||||
@blueprint.route("/<package>/recent")
|
@blueprint.route("/package/<package>/recent")
|
||||||
def api_downloads_recent(package):
|
def api_downloads_recent(package):
|
||||||
"""Get the recent downloads of a package."""
|
"""Get the recent downloads of a package."""
|
||||||
category = request.args.get('period')
|
category = request.args.get('period')
|
||||||
@@ -50,7 +50,7 @@ def api_downloads_recent(package):
|
|||||||
return jsonify(response)
|
return jsonify(response)
|
||||||
|
|
||||||
|
|
||||||
@blueprint.route("/<package>/overall")
|
@blueprint.route("/package/<package>/overall")
|
||||||
def api_downloads_overall(package):
|
def api_downloads_overall(package):
|
||||||
"""Get the overall download time series of a package."""
|
"""Get the overall download time series of a package."""
|
||||||
mirrors = request.args.get('mirrors')
|
mirrors = request.args.get('mirrors')
|
||||||
@@ -81,21 +81,21 @@ def api_downloads_overall(package):
|
|||||||
return jsonify(response)
|
return jsonify(response)
|
||||||
|
|
||||||
|
|
||||||
@blueprint.route("/<package>/python_major")
|
@blueprint.route("/package/<package>/python_major")
|
||||||
def api_downloads_python_major(package):
|
def api_downloads_python_major(package):
|
||||||
"""Get the python major download time series of a package."""
|
"""Get the python major download time series of a package."""
|
||||||
return generic_downloads(
|
return generic_downloads(
|
||||||
PythonMajorDownloadCount, package, "version", "python_major")
|
PythonMajorDownloadCount, package, "version", "python_major")
|
||||||
|
|
||||||
|
|
||||||
@blueprint.route("/<package>/python_minor")
|
@blueprint.route("/package/<package>/python_minor")
|
||||||
def api_downloads_python_minor(package):
|
def api_downloads_python_minor(package):
|
||||||
"""Get the python minor download time series of a package."""
|
"""Get the python minor download time series of a package."""
|
||||||
return generic_downloads(
|
return generic_downloads(
|
||||||
PythonMinorDownloadCount, package, "version", "python_minor")
|
PythonMinorDownloadCount, package, "version", "python_minor")
|
||||||
|
|
||||||
|
|
||||||
@blueprint.route("/<package>/system")
|
@blueprint.route("/package/<package>/system")
|
||||||
def api_downloads_system(package):
|
def api_downloads_system(package):
|
||||||
"""Get the system download time series of a package."""
|
"""Get the system download time series of a package."""
|
||||||
return generic_downloads(
|
return generic_downloads(
|
||||||
|
|||||||
Reference in New Issue
Block a user