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.1.1.tar.gz (241.0 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.1.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: herkules-1.1.1.tar.gz
  • Upload date:
  • Size: 241.0 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.1.1.tar.gz
Algorithm Hash digest
SHA256 145ea264114a57e688c1866aa04425d41cd96994335c692511ef20c57c59d04b
MD5 c1cfc7da08fc0e54b65e12c935aa0d0a
BLAKE2b-256 e474f6353aaa42afd4821777eb0c3a79c76d68d6bb99063cb0eb099125050da4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: herkules-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.5 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.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2a16248610bd7aaabcaa326a7c6f5d1a214804757f5231ad03bcece1b1ebb0ee
MD5 e87a7129b13c2700f36f9337ce9799d0
BLAKE2b-256 9f7cb19696eb1e360c2606e3d66787a71ef4e64496b2d793a8fcc35a34f51de9

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