fabifont / jobpilot

A straightforward job scraping library
GNU General Public License v3.0
7 stars 1 forks source link

Stars

Pre-commit checks

Open issues Open pull requests

License Latest release

PyPI release

jobpilot

jobpilot is a straightforward job scraping library.

Current limitations

Currently, jobpilot only supports LinkedIn. However, integration with other platforms, such as Indeed, is in the pipeline.

Installation

You can install jobpilot from PyPI using popular Python package managers like poetry, pip, pipx, and others.

Usage

A basic usage script is available in the examples directory.

Development

If you're interested in contributing to jobpilot, start by cloning the repository:

git clone https://github.com/fabifont/jobpilot.git
cd jobpilot

Once cloned, install the development dependencies with:

poetry install

This project maintains code quality and consistency using tools like pre-commit, ruff, black, and pyright. After cloning and installing the necessary dependencies, set up the pre-commit hooks:

pre-commit install

The pre-commit configuration checks for various common issues. These hooks run automatically with every commit. If a hook detects an issue it cannot fix automatically, it will abort the commit, offering an explanation of the problem.

To manually run pre-commit without committing, for instance, to validate your code before committing, use:

pre-commit run --all-files

All contributors must adhere to these checks. Submitted code in pull requests must pass all Continuous Integration (CI) workflows. GitHub workflows will verify this automatically. Pull requests with failing checks will not be merged.

jobpilot follows the Semantic Versioning 2.0.0 standard.

Contributing

Contributions to jobpilot are very welcome! Whether you're reporting bugs, enhancing documentation, or improving the code, every contribution helps.

Branching and commit naming conventions

To ensure consistency and clarity across the codebase, jobpilot follows a simplified naming convention for branches and commits. The naming conventions are based on the concepts shared in this article.

To assist with crafting conformant commit messages, jobpilot includes commitizen in its development dependencies. After staging your changes, you can utilize:

cz commit

commitizen will guide you in generating a structured and consistent commit message, adhering to our project's conventions.

License

jobpilot is licensed under the GPL-3.0. For full details, see the LICENSE file.