A simple FastAPI-based API that scrapes job postings from RemoteOK and returns them as JSON. Designed for easy local development and extensibility.
- Scrapes job postings from RemoteOK
- REST API endpoints for health check and job search
- CORS enabled for frontend integration
- Ready for deployment (e.g., Vercel, serverless)
- Python 3.9+
- FastAPI
- BeautifulSoup4 (for HTML parsing)
- Requests (for HTTP requests)
- Uvicorn (for local server)
-
Clone the repository:
git clone <your-repo-url> cd job_scraper_api
-
Install dependencies:
pip install -r requirements.txt
-
(Optional) Set up a virtual environment:
python -m venv venv .\venv\Scripts\activate # On Windows source venv/bin/activate # On Linux/Mac
uvicorn main:app --reloadThe API will be available at http://127.0.0.1:8000
GET /api/health
Response: { "status": "healthy" }
GET /api/jobs?q=python
Response: { "jobs": [ { "title": ..., "company": ..., "link": ... }, ... ] }
main.py- FastAPI app entry pointapi/routes.py- API endpointsscraper/__init__.py- Web scraping logicrequirements.txt- Python dependencies
MIT