FileHikerDev Project v0.4.3
1. Summary 🔗
| Slogan | Directory crawler Python package to find any file system item´s neighbour, one by one, walking either forward or backward |
| Description | FileHiker is a Python package to find the right or left neighbour for any filesystem item inside a given 'base folder'. It finds either the next or the previous neighbour, depending on a direction flag. If the given target does not exist, it tries to find a sensible neighbour anyway. |
| Particularities | • It walks forward and backward equally and symmetrically • It is suited for huge file system hierarchies due to it´s memory saving behaviour inspecting only one directory single-level at a time |
| License | BSD 3-Clause, see license.txt |
| Copyright | © 2025 – 2026 Norbert C. Maier |
| System | Written and tested with Python 3.13 on Windows. Should also work on Linux/Mac, just this is yet to be tested |
| Dependencies | None |
| Canonical location | gitlab.com/normai/filehikerdev |
| Documentation | normai.gitlab.io/filehikerdev |
| Distribution | pypi.org/project/filehiker |
| Motivation | I wanted walk a drive file by file to build a database of the files. It takes about 20 hours for 2 million files, including some little payload per file, like calculating the file hash. |
| Missing features | Symlink handling |
| Development Status | Applicable |
2. Installation 🔗
Install the package in your Python via pip (1) either as user installation from PyPi.org
or (2) as editable development installation if you have the sources on your machine
2.1 User Installation 🔗
Use one of the following commandline prompts (the .exe is Windows specific):
> pip.exe install filehiker
> pip.exe install -U filehiker
> python.exe -m pip install filehiker
> python.exe -m pip install -U filehiker
2.2 Development Installation 🔗
How to do so?
- Get the
filehikerdevproject folder on your local drive, possibly by cloning it from GitLab - In the console change directory to the project´s root folder
filehikerdev - Issue one of the following commands — Don´t miss the trailing dot for 'current folder'!
filehikerdev> pip.exe install -e .filehikerdev> python.exe -m pip install -e .
- You should see a console like in the following screenshot
Install FileHiker editable development version. Note the trailing dot in the first line!
(txt)
3. UI (User Interface) 🔗
Though FileHiker is a library to be used from other Python code, it provides a bit interactivity from the console anyway:
- Output help screen:
> python.exe -m filehiker - Output some status info:
> python.exe -m filehiker i - Perform a selftest on the built-in test-folder:
> python.exe -m filehiker s - Perform a selftest on your CWD, current working dir, from where ever you started python.exe:
> python.exe -m filehiker t
By the way. There is a curious restriction, mentioned just for sake of completeness.
Command python.exe -m filehiker must not be issued from the folder, where the
filehiker.py resides. If you do so, just nothing happens, which is due to Python´s
package handling. The case is difficult to catch from the code. The effort implementing
the case is not worth the gain. As a user, you will never see this folder anyway, and
as a developer you can easily just avoid it.
4. API (Application Programmers Interface) 🔗
See documentation at …
5. Usage 🔗
Here is a minimalistic example how to use FileHiker:
import filehiker
fhk = filehiker.FileHiker() # Since no base folder is defined, the CWD is used as such
offset = '' # No offset means the target is the base folder itself
neighbour = fhk.find_neighbour(offset) # The right neighbour of the base folder is it´s first entry
print(f'Right neighbour = {neighbour}' # Shows the found first entry in the base folder
6. Development Folder Structure 🔗
The FileHiker package uses the 'Src-Layout' folder structure, one of three common package layout options.
Find more about package folder structures in the ZanaFacils Notes file, subchapter
About Python Package Layouts.
filehikerdev ├── docs │ └── … ├── src │ └── filehiker │ ├── __init__.py │ ├── filehiker.py │ └── possible subpkgs │ ├── __init__.py │ └── module2.py ├── README.md └── pyproject.toml
7. Credits 🔗
8. Fineprint 🔗
project 20250406°0711 FileHiker objtype : Python package url : title : Filehiker summary : Find filesystem item´s neighbour left or right status : Applicable tags : note : ⬞
repo 20260818°1414 FileHikerDev objtype : Git repository canonical : https://gitlab.com/normai/filehikerdev title : FileHikerDev tags : note : ⬞
Page 20250406°0721 ⬞Ω
Release files for FileHiker 0.4.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| filehiker-0.4.3.tar.gz | 26.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| filehiker-0.4.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 57.2 kB
Release files / filehiker-0.4.3.tar.gz
| Download URL | filehiker-0.4.3.tar.gz |
|---|---|
| Size | 26.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b93d7403c9890bc9c2cdfd418fa0c09496ba149bb8732e8016bd5bf1887fab97
|
|
BLAKE2b-256 checksum How to use checksums |
c91bf4f69dc34881bd38e842001aa43845dd6efb70804a78b5d16973d42f28b6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / filehiker-0.4.3-py3-none-any.whl
| Download URL | filehiker-0.4.3-py3-none-any.whl |
|---|---|
| Size | 30.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cee420eaf00252105c9bc880d33d3f20838d8dc331cb0f5c6c382f023b26a2e7
|
|
BLAKE2b-256 checksum How to use checksums |
029cdb133a59a03871f8c6bd98539e76cc35a09ed42752e9c68d2b0619a50b34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|