# Changelog of Xing Job Scraper – Extract Job Listings & Details (`ninhothedev/xing-hr-scraper`) Actor

- **URL**: https://apify.com/ninhothedev/xing-hr-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/ninhothedev/xing-hr-scraper.md

## Changelog

### 2.0.0 (2026-03)

**Complete rewrite — fixes zero-output bug.**

#### Bug fixes

- **Pagination broken**: Xing uses `?page=N` URL params. Old code looked for `a[rel="next"]` which does not exist on Xing → only one page was ever crawled. Now builds next-page URLs directly by incrementing `?page=`.
- **Job URL pattern wrong**: Xing detail URLs follow `xing.com/jobs/{city}-{slug}-{numeric-id}`. Old patterns (`/jobs/details/`, `/stellenangebote/`) are obsolete. New regex: `/jobs/.+-\d{5,}$`.
- **list vs detail classification**: `isXingListUrl` now only matches `/jobs/search` path; `isXingJobDetailUrl` uses the numeric-ID regex.
- **Salary missing**: old code only read JSON-LD. New code falls back to DOM text-walker for `€` patterns when JSON-LD has no salary.
- **`startUrls` plain strings**: input editor can return plain strings; now handled alongside `{ url }` objects.
- **Concurrency default reduced**: from 4 to 2 — reduces Xing block rate.
- **Delay defaults increased**: 1000–2500 ms (was 600–1800 ms).

#### New output fields

- `careerLevel` – career level as reported on the listing
- `workplace` – workplace model (On-site / Hybrid / Full Remote)
- `scrapedAt` – ISO 8601 scrape timestamp

#### New input filters

- `employmentType` – Full-time / Part-time / Freelance / Student
- `careerLevel` – Entry / Professional / Manager / Executive
- `workplace` – Full remote / Hybrid
- `sortBy` – Newest first / Most relevant
- `salaryMin` / `salaryMax` – Annual salary range filter (€)

#### Other improvements

- Per-base-URL list-page counter (prevents over-crawling when multiple keyword variants are used).
- `seenJobUrls` Set prevents duplicate detail requests across variants.
- Cleaner logging: page counts and URL shown per list page.
- Updated ACTOR.md with full input/output reference table.
- Updated dataset\_schema.json with all new fields and table view.

### 1.1.0 (2026-03)

- Fixed `listPagesLimit` calculation (per variant).
- Fixed proxy group config (empty string guard).
- Corrected `maxRequestsPerCrawl` formula.
- Navigation timeout 90s.
- Login wall detection + counter.
- Improved CSS fallback selectors.
- Smart search: 40+ new job titles, circular synonyms removed.

### 1.0.0 (2025-02)

- Initial release.
