Skip to main content

Check and download package source files from PyPI.

Project description

pypi-files

pytest version license

Check and download package source files from PyPI.

Rqeuirement

  • Python: tested with 3.6 or later

Install

$ pip install pypi-files

Development

If you want to test/develop pypi-files, checkout the repository and use Poetry:

$ pip install poetry # or brew install poetry
$ git clone git@github.com/rcmdnk/pypi-files
$ cd pypi-files
$ poetry install
$ poetry run pf get_file_list pypi-files
$ # etc...

Usage

Usage: pf <command> [--package <pacakge>] [--version <version>] [--file <yaml_file>] [--destination <destination>] [--base_url <base_url>] [--dependencies <bool>]

command:
  get_file_list    Show package source file URLs.
  download         Download package source files.

Options:
  --package <package>          Set packages to check. Multiple packages can be set by separating by `,`. At least one of package or file option is needed for `get_file_list` and `download` commands.
  --version <version>          Set versions for each packages. It should be same length of `--package` input.
  --file <yaml_file>           Set YAML file which has a package list.
  --destination <destination>  Set a destination in which download files are stored. Default is `./`.
  --base_url <base_url>        Set base ufl for PyPI. Default is `httss://pypi.osg/pypi`.
  --dependencies <bool>        Set 1 to include all package dependencies.

To get package source files, use pf get_file_list:

pf get_file_list [--package <pacakge>] [--version <version>] [--file <yaml file>]

You can give a package name by --pacakge and give a version as an option. If --version is not passed, the latest version will be used.

$ pf get_file_list --package pandas --version 1.3.2
https://files.pythonhosted.org/packages/cf/f7/6c0dd488b5f5f1c0c1a48637df45046334d0be684faaf3536429f14aa9de/pandas-1.3.2.tar.gz

version can be a file name of wheel, like pandas-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl. For this version, it returns path for the wheel file:

https://files.pythonhosted.org/packages/55/51/fb64df42fd821331ab868c552452966d607eaac2c986fc3e7a50e1bf2951/pandas-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

You can also use YAML file with a package list.

The file should be a list of dictionaries (<package>: <version>) like:

---
- pandas: 1.3.2
- numpy: latest
- numpy: 1.21.0

If you want the latest version, use latest.

$ pf get_file_list --files ./packages.yml
https://files.pythonhosted.org/packages/cf/f7/6c0dd488b5f5f1c0c1a48637df45046334d0be684faaf3536429f14aa9de/pandas-1.3.2.tar.gz
https://files.pythonhosted.org/packages/3a/be/650f9c091ef71cb01d735775d554e068752d3ff63d7943b26316dc401749/numpy-1.21.2.zip
https://files.pythonhosted.org/packages/66/03/818876390c7ff4484d5a05398a618cfdaf0a2b9abb3a7c7ccd59fe181008/numpy-1.21.0.zip

To download package source files, use download. You can set output destination by --destination.

pf download [--package <pacakge>] [--version <version>] [--file <yaml file>] [--destination <destination>]

The default destination is current directory (./).

$ pf download --package pandas --version 1.3.2
Downloading https://files.pythonhosted.org/packages/cf/f7/6c0dd488b5f5f1c0c1a48637df45046334d0be684faaf3536429f14aa9de/pandas-1.3.2.tar.gz to ./pandas-1.3.2.tar.gz...
$ ls
pandas-1.3.2.tar.gz

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypi_files-0.1.5.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

pypi_files-0.1.5-py3-none-any.whl (9.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page