Skip to main content

This package allows you to scrape metadata from the Python Package Index

Project description

pymetasnap PyPI version

pymetasnap is a command-line tool that enables you to extract metadata from the Python Package Index (PyPI). It allows you to retrieve essential information about Python packages hosted on PyPI, including package names, versions, licenses, project URLs, and more.

By leveraging the PyPI API, pymetasnap automates the process of gathering package metadata, making it convenient for developers, researchers, and anyone interested in exploring package information in a structured manner.

Features

  • Retrieve metadata for Python packages from PyPI.
  • Extract package names, versions, licenses, and other relevant information.
  • Fetch project URLs and version-specific URLs for detailed package exploration.
  • Store the extracted metadata in CSV or Excel format for further analysis.

Installation

You can install pymetasnap using pip:

pip install pymetasnap

Usage

Detached mode

To extract metadata for Python packages from PyPI, use the following command:

pymetasnap extract --source-path <path_of_the_txt_file> --output <output_path> --format <input_format>

Replace the following placeholders in the command:

  • <path_of_the_txt_file>: Names of the packages to retrieve metadata for (separated by spaces).
  • <output_path>: Path to store the extracted metadata file.
  • <input_format>: Format of the input requirements file (pip_list or pip_freeze).

Interactive mode

Additionally, an interactive mode is available, allowing you to provide the required values through user prompts as follows:

asciicast

Output

The tool generates a file containing the extracted metadata for the specified packages in the provided output format (CSV or Excel). The output file includes columns for package name, version, license, repository URL, project URL, and version-specific URL. This information can be used for various purposes, such as dependency analysis, license compliance, or package research.

Contributing

Contributions to pymetasnap are welcome! If you encounter any issues or have suggestions for improvements, please open an issue on the project's GitHub repository.

When contributing, please ensure that you follow the existing coding style, write tests for new features, and make sure the tests pass before submitting a pull request.

License

pymetasnap is licensed under the MIT License. See the LICENSE file for more details.

Acknowledgments

The pymetasnap tool builds upon the PyPI API to provide a convenient way to access package metadata. We would like to express our gratitude to the PyPI maintainers and the Python community for their continuous efforts in maintaining and improving the Python Package Index.

Contact

For any inquiries or feedback, please contact the project maintainer at using the issues tab.

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

pymetasnap-0.38.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

pymetasnap-0.38.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file pymetasnap-0.38.0.tar.gz.

File metadata

  • Download URL: pymetasnap-0.38.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for pymetasnap-0.38.0.tar.gz
Algorithm Hash digest
SHA256 57792a139419162b16766b6f9bd211ac16e3df504f648420acc6855b1694003d
MD5 f4486da920b164d8cf057e41b90b53dd
BLAKE2b-256 69e46bf37d9cd0b93def9e15da924e5ed3f408f696a995c1c1be5cb20ca7fd05

See more details on using hashes here.

File details

Details for the file pymetasnap-0.38.0-py3-none-any.whl.

File metadata

  • Download URL: pymetasnap-0.38.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for pymetasnap-0.38.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d335dcbd6fe42fea9f6a1fe620edfca84067e215f392108bda993dfe085d031
MD5 6af2b859407f5f3d68a4ff697f472960
BLAKE2b-256 01a49f626698b92293b46b7d9b3edab739fb907c60346ea64b4a0b4ce1e5ba8b

See more details on using hashes here.

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