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

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymetasnap-0.48.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for pymetasnap-0.48.0.tar.gz
Algorithm Hash digest
SHA256 6d5fd078acecd8cca09a2d64c200f72e327b93ae901fd5ca0d5b9a24c5190e2b
MD5 3f55ad3f72fc18374d1c12e441b07744
BLAKE2b-256 435ec3aa24a98df24f6530993990e515ef0a4971e09c9bf63d71ed515d12316c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for pymetasnap-0.48.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d0d88cf179826921bf5513ca7295a3bd3d562914a9e037c1b8fe9afcefd58325
MD5 7aae97557414a96d021f57e0bba3fabd
BLAKE2b-256 951be9070f6e6c3f875b7c654d45b52d2ce2d7cf89773fd52a458932e5b99bce

See more details on using hashes here.

Supported by

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