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.37.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymetasnap-0.37.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.37.0.tar.gz
Algorithm Hash digest
SHA256 965df51ab45743e4e689d85a870ffad996b24c89591ff0aa073ea0125e037874
MD5 e3a233444119128d13cb85f1a5bd769c
BLAKE2b-256 01fbe55fc54e8aca6836ac30e2aabf8d8b9164432caf77a800343deb94dbbe27

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pymetasnap-0.37.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.37.0-py3-none-any.whl
Algorithm Hash digest
SHA256 125af8fe88f57222cc6ebf3461c600652170f7d1190c46bf366735d3e17b8e62
MD5 06436450b304a26372b09218981b11d5
BLAKE2b-256 bf3ccb17c71df66fc4d0eec7b816f5ab3d025d49206fceb018ce21c45a0fa391

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