Doda.jp Job Scraper
Pricing
from $1.59 / 1,000 results
Doda.jp Job Scraper
Scrape Dodas 280000+ job listings — Japans #1 job board. Filter by keyword, prefecture, salary, employment type. Cheaper than alternatives at 1.99 per 1000 results.
Pricing
from $1.59 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share

Extract job listings from doda.jp at scale, in a clean, consistent structure ready for analysis, job boards, recruiting tools and market research. No API key required.
Why this scraper?
🎯 Built for Japan
A dedicated Japanese scraper, not a global tool with a country dropdown. Search, locations and currency (JPY) are tuned for doda.jp.
📄 Clean job records
Job title, direct listing URL and publish date for every record, in a consistent structure.
💶 Salary data
Salary information parsed from the listing where the employer publishes it, in JPY. Missing salaries are returned as null, never guessed.
🏢 Company details
Hiring company name plus the profile details the source publishes, such as logo and company page.
📍 Location fields
Structured location data for every listing, ready for filtering and analysis.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQuery | string | "developer" | Job title, skill, or keyword to search for (e.g. 'エンジニア', 'マーケティング'). |
prefecture | string | (empty) | Japanese prefecture code or name, e.g. '東京' or '13'. Leave blank for all Japan. |
occupationCode | string | (empty) | Comma-separated Doda occupation codes, e.g. '0101M,0102M'. Leave blank for all categories. |
employmentType | string | "Full-time" | Filter by employment type. |
salaryMin | integer | 0 | Minimum annual salary in 万円, e.g. 400 for ¥4,000,000. Leave 0 for no minimum. |
daysOld | integer | 0 | Only include jobs posted within this many days. Common values: 1, 3, 7, 14, 30. Leave 0 for all. |
requestDelayMs | integer | 1500 | Minimum delay between page requests in milliseconds. Default 1500 ms. |
fetchDetails | boolean | false | Fetch full job details from individual listing pages. |
maxItems | integer | 200 | Maximum number of job listings to return. Default 200. Set 0 for unlimited. |
Output schema
Every field below is present on every record. Fields the source does not publish for a given job are returned as null rather than omitted.
| Field | Type | Description |
|---|---|---|
jobId | string | Unique listing ID from the source. |
manuscriptId | string | Manuscript id. |
title | string | Job title as published. |
company | string | Hiring company name. |
marketListing | string | Market listing. |
corporateGroup | string | Corporate group. |
location | string | Location as displayed on the listing. |
prefecture | string | Prefecture. |
nearestStations | array | Nearest stations. |
employmentType | string | Employment type (e.g. full-time, part-time). |
salaryMin | number | Minimum salary (null if not published by the employer). |
salaryMax | number | Maximum salary (null if not published by the employer). |
salaryText | string | Raw salary text as displayed (null if not published). |
salaryExamples | array | Salary examples. |
businessContent | string | Business content. |
shortDescription | string | Short description. |
fullDescription | string | Full description. |
requirements | string | Requirements. |
prText | string | Pr text. |
isNewArrival | boolean | Is new arrival. |
isNearDeadline | boolean | Is near deadline. |
jobUrl | string | Direct link to the listing. |
scrapedAt | string | Timestamp when this record was scraped. |
Example record
{"jobId": "3014747820","manuscriptId": "2017687090","title": "ITエンジニア/定着率95%/2カ月間の選べる個別型研修有","company": "株式会社HAL","marketListing": null,"corporateGroup": null,"location": "★リモート案件7割\n★会社都合による転勤なし\n★居住地を考慮し配属します\n★U・I・Jターン歓迎\n\n本社、各支社・オフィス、プロジェクト先\n※プロジェクトによりリモートあり(業務に慣れれば、フルリモート・完全在宅・テレワークの可能性も有)\n\n<勤務地>\n北海道、宮城、福島、東京、神奈川、埼玉、千葉、石川、愛知、静岡、岐阜、三重、京都、大阪、滋賀、奈良、和歌山、兵庫、広島、福岡、熊本\n\n【本社】\n東 …","prefecture": "北海道","nearestStations": ["東京駅","さっぽろ駅","仙台駅"],"employmentType": "Full-time","salaryMin": 3000000,"salaryMax": 3120000,"salaryText": "【未経験者】\n■首都圏エリア(東京、神奈川、千葉、埼玉勤務)\n月給25万円~26万円(固定残業代含む)\n※固定残業代は、時間外労働の有無に関わらず17時間分を30,000円~31,200円支給\n※超過分は別途支給\n\n■首都圏エリア以外\n月給23万円~26万円(固定残業代含む)\n※固定残業代は、時間外労働の有無に関わらず17時間分を27,600円~31,200円支給\n※超過分は別途支給\n\n【経験者】 …","salaryExamples": [{"index": 1,"text": "年収870万円/32歳(経験7年)"},{"index": 2,"text": "年収688万円/30歳(経験5年)"},{"index": 3,"text": "年収433万円/25歳(経験3年)"}],"businessContent": "■ コンピュータシステム導入に関するコンサルティング\n■ コンピュータシステム構築請負業務\n■ ネットワーク設計、構築、運用\n■ サーバー設計、構築、運用業務\n■ コンピュータシステム運用管理業務\n■ ERP導入コンサルティング業務\n■ エンジニア教育業務 (新人研修、スキルアップ研修他)\n\n一般労働者派遣事業許可番号 派13-302710","shortDescription": "【先輩社員の99%が年収UP!希望案件へ配属】幅広いプロジェクトから、やりたい仕事を選べます!","fullDescription": "様々なビジネスシーンで活用される業務システムの開発を手掛けている当社。\n幅広いプロジェクトの中でも、エンドユーザー・大手SIerと直接取引した案件がメインです。\n\n\未経験でも安心!3つの研修制度/\n■IT基礎研修\n2週間の集合研修の後は、開発・インフラどちらかを選択いただいて学べる2カ月の個別型研修をご用意。Linux、SQL、Java、Excelといった技術面からビジネスマナーに至るまで、エン …","requirements": "【学歴不問/未経験歓迎】もちろん業務系・Web系アプリ系・インフラ系の経験者の方も歓迎します!","prText": "\充実の研修であなたのエンジニアデビューをサポートします!/\n☆中途入社者の99%が年収UP\n☆業界トップクラス!還元率80%\n☆開発もインフラも「やりたい」を最大限反映!希望のプロジェクトへ\n☆年休120日/残業月平均10~20H","isNewArrival": true,"isNearDeadline": true,"jobUrl": "https://doda.jp/DodaFront/View/JobSearchDetail/j_jid__3014747820/-tab__pr/","scrapedAt": "2026-07-03T20:37:08.684Z"}
Examples
Search for エンジニア roles in 東京:
{"searchQuery": "エンジニア","maxItems": 100}
Filter by contract type:
{"searchQuery": "エンジニア","maxItems": 100,"employmentType": ""}
Larger run with a hard cap:
{"searchQuery": "エンジニア","maxItems": 500}
Daily feed (run on a schedule):
{"searchQuery": "エンジニア","daysOld": 1,"maxItems": 500}
Schedule this input to run once a day in the Apify Scheduler — each run returns only jobs posted in the last 24 hours.
💰 Pricing
$1.99 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.
| Results | Cost |
|---|---|
| 100 | ~$0.20 |
| 1,000 | ~$1.99 |
| 10,000 | ~$19.90 |
| 100,000 | ~$199 |
Flat-rate alternatives typically charge $29–$49/month regardless of usage.
Subscription tiers lower the rate further, down to $1.19 per 1,000 at the highest tier. Use the Max results cap in the input to control your spend exactly.
Performance
| Run size | Typical time |
|---|---|
| 100 results | under 1 minute |
| 1,000 results | 2–4 minutes |
| 10,000 results | 20–35 minutes |
Known limitations
- Salary is only returned when the employer publishes it — many listings carry
nullsalary fields. - Company details vary per listing; the scraper returns what the source publishes and never invents data.
- Very large result sets are bounded by the source's own paging limits.
- Listings can be removed by the source at any time, so a small share of URLs may expire shortly after scraping.
Technical details
- Source: doda.jp — Japan job listings
- Coverage: everything the public search exposes, filterable via the input parameters above
- Retry: automatic retry on network errors with exponential backoff
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl