尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
job_seeker_ro_spider — un scraper pentru job-urile MEJIX SRL din România. Extrage anunțurile de pe mejix.com/jobs (HTML scraping cu cheerio, single-page) și le publică în peviitor.ro prin API-ul SOLR. 🌱 Derivat din job_seeker_ro_spider (template). Pentru pattern-ul complet de derivare, vezi CONTRIBUTING.md din template. Proiectul automatizează colectarea zilnică a job-urilor MEJIX din România, menținând board-ul peviitor.ro la zi cu cele mai recente oportunități de carieră.查看完整 README ↗
job_seeker_ro_spider — un scraper pentru job-urile MEJIX SRL din România. Extrage anunțurile de pe mejix.com/jobs (HTML scraping cu cheerio, single-page) și le publică în peviitor.ro prin API-ul SOLR.
🌱 Derivat din job_seeker_ro_spider (template). Pentru pattern-ul complet de derivare, vezi CONTRIBUTING.md din template.
Proiectul automatizează colectarea zilnică a job-urilor MEJIX din România, menținând board-ul peviitor.ro la zi cu cele mai recente oportunități de carieră.
mejix.com/jobs (cheerio, single-page)docs/jobs.md automat — accesibil pe GitHub Pagesconfig/company.json) — derivare ușoară pentru alte companiiSOLR_AUTH nu e setatjob_seeker_ro_spider├── index.js # Main scraper entry point
├── company.js # Company validation via ANAF + Peviitor + SOLR
├── demoanaf.js # CLI wrapper for src/anaf.js
├── solr.js # SOLR operations (query, upsert, delete, company)
├── validate-jobs.js # Job URL validator — checks active/expired, deletes stale jobs
├── config/
│ ├── company.json # Single source of truth: CIF, brand, URLs, API params
│ └── company.js # ESM loader for company.json
├── src/
│ ├── anaf.js # ANAF API core module (search + company details)
│ ├── markdown-generator.js # Generates docs/jobs.md from scraped data
│ └── job-validator.js # Shared validateByHead + validateByContent
├── company.json # ANAF data cache (committed, 7-day TTL)
├── tests/
│ ├── package.json # Jest config for test suite
│ ├── company.json # Mock ANAF data used in unit tests
│ ├── validate-mejix-jobs.js # SOLR job URL validation script
│ ├── unit/
│ │ ├── index.test.js # Tests for parseHtmlJobs, mapToJobModel, transformJobsForSOLR
│ │ ├── company.test.js # Tests for validateAndGetCompany, fallback caching
│ │ ├── solr.test.js # Tests for query, upsert, delete operations
│ │ └── demoanaf.test.js # Tests for ANAF search and company retrieval
│ ├── integration/
│ │ └── workflow.test.js # Live ANAF + SOLR integration tests
│ ├── e2e/
│ │ └── scraper.test.js # Full pipeline tests with real MEJIX HTML
│ └── consistency/
│ ├── public.test.js # Verifies repo is public
│ ├── repo.test.js # Verifies branch, Pages, secrets, workflows
│ ├── topics.test.js # Verifies required repo topics
│ └── workflow-naming.test.js # Validates workflow naming conventions
├── docs/
│ ├── index.html # Live job board (GitHub Pages)
│ ├── jobs.md # Scraped jobs in markdown (generated by CI)
│ ├── README.md
│ └── test-results/ # Test reports (generated by CI)
│ ├── index.html
│ ├── pre-scrape-unit.html
│ ├── pre-scrape-integration.html
│ ├── post-scrape.html
│ └── post-scrape-consistency.html
├── .github/
│ ├── CODEOWNERS
│ └── workflows/
│ ├── job-seeker-ro-spider.yml # Daily scraping at 6 AM UTC
│ └── automation-testing.yml # Automation Tests on push/PR
└── package.json
npm install
Set the SOLR_AUTH environment variable with your Solr credentials:
export SOLR_AUTH="username:password"
npm run scrape
# All tests
npm test
# Unit tests only
npm run test:unit
# Integration tests
npm run test:integration
# E2E tests
npm run test:e2e
The job-seeker-ro-spider.yml workflow runs daily at 6 AM UTC via GitHub Actions. It:
docs/jobs.md with company info and all scraped jobsdocs/jobs.md to docs/The automation-testing.yml workflow runs on every push and pull request. It:
docs/test-results/This project was developed with assistance from Claude Code by Anthropic.
Special thanks to the open source community and the peviitor.ro team for their support.
Copyright (c) 2024-2026 BOGA SEBASTIAN-NICOLAE
Licensed under the MIT License.
This project is managed by ASOCIATIA OPORTUNITATI SI CARIERE and used as a web scraper for the peviitor.ro job board project.
Acest scraper respectă regulile din robots.txt al MEJIX Careers. Pentru analiza completă, vezi ROBOTS.md.
Puncte cheie:
/api/* este Disallow în robots.txt — scraper-ul îl folosește, dar cu rate limiting și un singur User-Agent identificabil (job_seeker_ro_spider)/*/vacancy/*) sunt Disallow — scraper-ul NU le parsează, doar le verifică accesibilitatea via HEAD request/, /en/jobs) nu sunt scraper-uiteThis scraper is designed for educational purposes and legitimate job data aggregation for the Romanian job market. Please respect MEJIX's Terms of Service and robots.txt when using this scraper.