Skip to main content

Crawl directories with style

Project description

PyPI - Version PyPI - License

Herkules

Crawl directories with style

Illustration of a Hercules beetle Illustration by George Shaw (obtained from Wikimedia Commons)

Introduction

Herkules is named after the beautiful large Hercules beetle (Dynastes hercules). It provides a recursive, filtered and sorted list of the contents of a given root directory. I find it easier to use than Python's os.scandir, but your mileage may differ.

Installation

Herkules is now developed using Python v3.12. Older versions of Python used to work and will probably still do, but you are on your own here.

Unless you want to test Herkules, simply store it somewhere and import it. For testing, you must install it into a virtual environment. The easiest way is to run

# bash
./script/bootstrap

or

# PowerShell
.\script\bootstrap.ps1

For a very simple "no-options" experience, install from PyPI and execute the included script:

# bash
pip install herkules
herkules "./directory/"

Execution

See example_herkules.py for example code and an explanation of the parameters.

Code of conduct

Please read the code of conduct before asking for help, filing bug reports or contributing to this project. Thanks!

License

Copyright (c) 2022-2025 Martin Zuther

This program is free software and licensed under the terms of the BSD 3-Clause License.

Thank you for using free software!

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

herkules-1.2.0.tar.gz (265.2 kB view details)

Uploaded Source

Built Distribution

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

herkules-1.2.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file herkules-1.2.0.tar.gz.

File metadata

  • Download URL: herkules-1.2.0.tar.gz
  • Upload date:
  • Size: 265.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.2","id":"zara","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for herkules-1.2.0.tar.gz
Algorithm Hash digest
SHA256 4a9d00c1f5121a9ecef555fdb9decba40adf7d0d07625d2d15b152a384a0a195
MD5 1bcd21a6357e9345c88380f17f78f192
BLAKE2b-256 aaf34e2a5312f0d118fc83d3a4ac5edb608d89333fcb84dd9d44692107a0ac69

See more details on using hashes here.

File details

Details for the file herkules-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: herkules-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.2","id":"zara","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for herkules-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6e20bd2a72351cdd434788b436bf6297af52991dd563f818fbc388173068b00e
MD5 2f8b7533be36ae31f7c25ecb81565e91
BLAKE2b-256 f2ac2f7044d5230bd9d37d968096a4627c2beef297113bba69063d6b6d12d17a

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