Simply Hired driver implementation for The Pudim Hunter platform
Project description
pudim-hunter-driver-simply-hired
A specialized Simply Hired job scraper package built on top of pudim-hunter-driver. This package provides a robust implementation for scraping job listings from Simply Hired while effectively avoiding bot detection mechanisms.
Table of Contents
Features
- Specialized Simply Hired job scraping implementation
- Advanced anti-bot detection using PhantomPlaywrightScraper
- Headless browser automation with Playwright
- Robust error handling and retry mechanisms
- Clean job data extraction and transformation
Installation
From PyPI
pip install pudim-hunter-driver-simply-hired
For Development
git clone git@github.com:luismr/pudim-hunter-driver-simply-hired.git
cd pudim-hunter-driver-simply-hired
pip install -e .
Usage
from pudim_hunter_driver.models import JobQuery
from pudim_hunter_driver_simply_hired import SimplyHiredJobDriver
# Initialize the driver
driver = SimplyHiredJobDriver()
# Create a job search query
query = JobQuery(
keywords="software engineer",
location="San Francisco",
page=1,
items_per_page=20
)
# Fetch jobs
job_list = driver.fetch_jobs(query)
for job in job_list.jobs:
print(f"{job.title} at {job.company}")
Anti-Bot Detection
The SimplyHiredJobDriver uses PhantomPlaywrightScraper internally to implement advanced anti-bot detection measures, ensuring reliable scraping from Simply Hired. This includes:
- Browser fingerprint randomization
- Stealth mode configurations
- Automated request pattern variation
- Advanced header management
Project Structure
pudim-hunter-driver-simply-hired/
├── src/
│ └── pudim_hunter_driver_simply_hired/
│ ├── __init__.py
│ └── driver.py # SimplyHiredJobDriver implementation
├── tests/
│ ├── __init__.py
│ └── test_simply_hired.py # SimplyHiredJobDriver tests
├── README.md
├── requirements.txt
├── setup.py
└── pyproject.toml
Development Setup
Prerequisites
- Python 3.9 or higher
- pip (Python package installer)
- venv module
Setup Instructions
- Create and activate virtual environment:
python3.9 -m venv venv
source venv/bin/activate # On Windows: .\venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
pip install -e .
- Install Playwright browsers:
playwright install chromium
Testing
Run the tests:
pytest tests/
The main test file:
test_simply_hired.py: Tests for SimplyHiredJobDriver implementation and its anti-bot capabilities
Contributing
Getting Started
- Fork and clone the repository:
git clone git@github.com:luismr/pudim-hunter-driver-simply-hired.git
cd pudim-hunter-driver-simply-hired
- Create your feature branch:
git checkout -b feature/amazing-feature
- Set up development environment as described above
Pull Request Process
- Update documentation as needed
- Add/update tests as needed
- Ensure all tests pass
- Submit PR for review
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
Copyright (c) 2024-2025 Luis Machado Reis
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pudim-hunter-driver-simply-hired-0.0.3.tar.gz.
File metadata
- Download URL: pudim-hunter-driver-simply-hired-0.0.3.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92fa9bb42da65adf9ddf52a66d565055e4f424daab76cbf1712ce914089ae977
|
|
| MD5 |
b7371924b97b86b30f2e145c81ea6446
|
|
| BLAKE2b-256 |
a061a2295198fa00e37f3118b1779c6e27f2313e6b1d4ce7f6115d924a655be2
|
File details
Details for the file pudim_hunter_driver_simply_hired-0.0.3-py3-none-any.whl.
File metadata
- Download URL: pudim_hunter_driver_simply_hired-0.0.3-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
267770bf886e691bb5233629bb1fea9f8309a46dba96247ae35bcf24864038af
|
|
| MD5 |
7ef79cd9a92887b8e421b2985c9af521
|
|
| BLAKE2b-256 |
9ed2e16d7e5fa93483b498154d06dafc7b34e08e23df14706e73cf9cf5b86e85
|