从pypi检索包的每月下载统计信息

pypstats的Python项目详细描述


概要

pypstats用于检索每月和每个版本的下载统计信息 通过PyPI分发的包的。 它可用于编写.csv文件、绘制每月统计数据和检索 最新版本的信息。每月统计数据存储在 http://pypi.python.org/stats/months/在压缩文件中 2010年6月。这些文件包含有关已删除版本的信息 因此,pypstats为 2010年6月后发行。

安装

http://pypi.python.org/pypi/pypstats下载包文件。提取 其内容并运行setup.py如下:

$ tar -xzf pypstats-1.x.tar.gz
$ cd pypstats-1.x
$ python setup.py install

或者,如果你有Easy Install 已安装,请键入以下内容:

$ easy_install -U pypstats

用法

首次使用

在打印或打印统计数据之前,需要检索统计数据 并使用pypstats update在本地保存它们命令:

$ pypstats update ProDy
Fetching content from 'http://pypi.python.org/stats/months/'.
Parsing monthly statistics file details.
Updating statistics for 2010-06.
...
Updating statistics for 2012-01.
Package statistics are updated (ProDy_stats.pkl).

在第一次使用时检索统计信息需要一些时间,因为 每月的统计数据文件被下载。请注意,下载的文件将 保存在临时文件夹中,除非传递了--nocache选项。保存 下载的文件将使构建多个包的统计文件更快。

每月统计

可以使用pypstats monthly命令打印月度统计信息:

$ pypstats monthly ProDy_stats.pkl
Loading statistics from 'ProDy_stats.pkl'.
Month Downloads
2010-11       286
...
2012-01       1041
Total   10664

此信息也可以打印并保存在.csv文件中 如下:

$ pypstats monthly -o monthly.csv -p monthly.png ProDy_stats.pkl
Loading statistics from 'ProDy_stats.pkl'.
Monthly statistics are written in 'monthly.csv'.
Monthly downloads plot is saved as 'monthly.png'.

释放状态

可以使用pypstats release打印版本统计信息命令:

$ pypstats release ProDy_stats.pkl
Loading statistics from 'ProDy_stats.pkl'.
Release       Downloads
0.1.0 397
...
0.9.2 328
Total 10664

类似地,输出可以写入.csv文件,如下所示:

$ pypstats release -o release_stats.csv -q ProDy_stats.pkl

注意,-q参数禁止写入stderr的消息。

总下载量

可使用pypstats total命令打印下载总数:

$ pypstats total -q ProDy_stats.pkl
10664

最新版本

可以使用pypstats latest检索最新版本信息 命令:

$ pypstats latest -q ProDy
File  URL     md5     Type    Py Version      Size    Downloads
ProDy-0.9.2.tar.gz    http://pypi.python.org/packages/source/P/ProDy/ProDy-0.9.2.tar.gz       9ad6f6e6012f824ea5e7acb344607eae        Source          711KB   119
ProDy-0.9.2.win32-py2.6.exe   http://pypi.python.org/packages/2.6/P/ProDy/ProDy-0.9.2.win32-py2.6.exe 51f8587dcc8fe6d0355327d811ea71c3        MS Windows installer    2.6     455KB   47
ProDy-0.9.2.win32-py2.7.exe   http://pypi.python.org/packages/2.7/P/ProDy/ProDy-0.9.2.win32-py2.7.exe 68ba279f3d9e02b38e4f3e6339b41b26        MS Windows installer    2.7     909KB   53
ProDy-0.9.2.zip       http://pypi.python.org/packages/source/P/ProDy/ProDy-0.9.2.zip  b447f8b607defd5cda65163e43b32150        Source          744KB   109

可以使用重新构造的文本样式将此信息写入CSV文件:

$ pypstats latest -q -o latest_release.csv --rst ProDy

此文件可以在使用Sphinx准备的页中使用, 有关示例,请参见:http://www.csb.pitt.edu/ProDy/getprody.html

更新

可以使用pypstats update更新本地统计文件命令:

$ pypstats update -s ProDy_stats.pkl ProDy
Fetching content from 'http://pypi.python.org/stats/months/'.
Parsing monthly statistics file details.
Nothing to update.

此命令将通过下载 自上次更新后已更改。

帮助

若要获取帮助,请键入命令名和-h参数:

$ pypstats -h
usage: pypstats.py [-h] {latest,monthly,total,update,release} ...

Fetch package download statistics from Python Package Index (PyPI). Package
needs to be distributed via PyPI.

optional arguments:
  -h, --help            show this help message and exit

subcommands:
  {latest,monthly,total,update,release}
    update              retrieve or update download statistics
    latest              retrieve and output latest release information
    monthly             output/plot monthly download statistics
    release             output download statistics by release
    total               output total number of downloads

See 'pypstats <command> -h' for more information on a specific command.
$ pypstats monthly -h
usage: pypstats.py monthly [-h] [-q] [-o FILENAME] [-d DELIMITER]
                           [-p FILENAME] [--dpi INT] [--mlabelstep INT]
                           pkl

positional arguments:
  pkl               package statistics filename

optional arguments:
  -h, --help        show this help message and exit
  -q, --quiet       suppress stderr log messages
  -o FILENAME       output CSV filename, if not provided print to stdout
  -d DELIMITER      output column delimiter (default: ' ')
  -p FILENAME       figure filename, requires Matplotlib
  --dpi INT         figure resolution (default: '72')
  --mlabelstep INT  figure month label step (default: '2')

功能

from pypstats import *导入可以使用的以下函数 直接在python代码中:

  • pyps_update(package, pkl, cache)-更新包统计信息
  • pyps_monthly(pkl)-返回每月下载统计信息
  • pyps_release(pkl)-返回版本下载统计信息
  • pyps_total(pkl)-返回下载总数

许可证

pypstats在gnu通用公共许可版本3下可用。见 license.rst了解更多详细信息。

更改

v1.3

  • 添加了可以直接在python代码中使用的新函数。见用法 以上章节。
  • 在保存下载的统计数据文件时使用时间戳,以便时区 分歧不会造成问题。

v1.2.1

  • 修复了安装问题。

v1.2

  • 将脚本pypstats重命名为pyps
  • 下载的统计数据文件保存到临时文件夹。当多个包统计信息 因此,将从此文件夹中读取内容。

第1版。1

  • 将命令current重命名为latest

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
空字符串检查在java中未按预期工作   JavaSpringWebClient:自动计算主体的HMAC签名并将其作为头传递   foreach是否有一个Java等效的foreach循环和一个引用变量?   java如何在Eclipse中导入jar   使用特定第三方或java时lombok触发错误。*方法或构造函数   安卓 java将对象数组转换为int数组   java使一定百分比的JUnit测试通过   java Android:将Seekbar的一个值与另一个值进行比较   java将int数组(图像数据)写入文件的最佳方式是什么   java取代了系统。yml的构造函数内的getProperty   sqlite Java将公钥和私钥转换为字符串,然后再转换回字符串   安卓获取白色像素并将其保存到java opencv中的数组中   java为什么是ServerSocket。setSocketFactory静态?   Java数组似乎在不直接修改的情况下更改值