Web Scraping — PerfectJob

Scrape job listings from Brazilian and international job boards with Playwright and Jsoup.

Updated Apr 26, 2026
One-click install
npx skills add https://github.com/Renzo-Tognella/UniversalThingsForMyAgents --skill web-scraping-perfectjob
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Web Scraping — PerfectJob
Source: https://github.com/Renzo-Tognella/UniversalThingsForMyAgents/tree/main/skills/03_web_scraping
Command: npx skills add https://github.com/Renzo-Tognella/UniversalThingsForMyAgents --skill web-scraping-perfectjob

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright, jsoup, spring-boot, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides a comprehensive job database by scraping job listings from various Brazilian and international job boards, eliminating the need for manual data collection and integration.

Core Features & Use Cases

  • Job Board Scraping: Crawl job listings from LinkedIn, Indeed Brasil, Catho, Glassdoor, InfoJobs, and GUPY.
  • JavaScript Handling: Use Playwright to handle JavaScript-heavy sites.
  • Static HTML Scraping: Use Jsoup for static HTML sites.
  • Rate Limiting: Implement rate limiting per domain to prevent hitting API limits.
  • Deduplication: Utilize URL hash and embedding similarity for job deduplication.

Quick Start

Start scraping job listings by configuring the Skill with the desired job boards and queries.

Frequently Asked Questions about Web Scraping — PerfectJob

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scrape job listings from JavaScript-heavy sites like LinkedIn?

To scrape job listings from JavaScript-heavy sites, you can use Playwright to render dynamic content and extract job data. This approach handles complex page loads that static scraping tools cannot process.

What is the best way to scrape Brazilian job boards like Catho and GUPY?

The best way to scrape Brazilian job boards is by using a framework that handles both static HTML with Jsoup and dynamic content with Playwright, while implementing domain rate limiting to prevent API blocks.

How do I deduplicate job postings when web scraping multiple job boards?

To deduplicate job postings during web scraping, you can utilize URL hashing and embedding similarity techniques. This identifies and removes duplicate listings across different job boards.

Do I need Spring Boot to build a comprehensive job database from scraping?

Yes, you need Spring Boot to manage scheduling and deduplicate job data when building a comprehensive job database. It orchestrates the scraping logic alongside Playwright and Jsoup.

How does rate limiting work when scraping job boards?

Rate limiting when scraping job boards works by restricting the number of requests sent per domain. This prevents hitting API limits and avoids being blocked by the target job board.