メインコンテンツまでスキップ

取得元とプラットフォームの対応

Sweepy は 2 つの方法で求人を見つけます。4 つの公開 ATS サイトとニューヨークの求人サイト 1 つに直接問い合わせます。加えて python-jobspy 経由でアグリゲーターフィードを読み取れます。このページはすべてのソースを一覧し、自分の分野に Sweepy を向ける方法を示します。

既定のソース​

初期状態で、Sweepy は 5 つの決定的なソースと 1 つのアグリゲーター経路をスイープします。決定的なソースは、誰でも開ける公開エンドポイントを使います。アカウント、ログイン、有料サービスは不要です。

ソース設定キーシードファイルエンドポイント
Greenhousesources.greenhouse.boardsdata/sources/greenhouse_boards.txtboards-api.greenhouse.io/v1/boards/{board}/jobs?content=true
Ashbysources.ashby.orgsdata/sources/ashby_orgs.txtapi.ashbyhq.com/posting-api/job-board/{org}
Leversources.lever.companiesdata/sources/lever_companies.txtapi.lever.co/v0/postings/{company}?mode=json
Workablesources.workable.slugsdata/sources/workable_slugs.txtapply.workable.com/api/v1/widget/accounts/{slug}
Built In NYCsources.builtinnyc.categoriesdata/sources/builtin_categories.txtbuiltinnyc.com/{category}
Glassdoorsources.jobspy.glassdoorなしpython-jobspy 経由

有効化の規則​

Sweepy は、次の 2 つの設定がそろったときに決定的なソースを実行します。

  1. sources.<name>.enabled を true に設定します。
  2. 対応する設定がある場合は platforms.<name> を true に設定します。

どちらのキーも既定は true です。

次の例外に注意してください。

  • Built In NYC には platforms.builtinnyc の設定がありません。エンジンは sources.builtinnyc.enabled だけを尊重します。各カードには、掲載ページから企業、働く場所、勤務地、給与が入ります。求人の全文も読み取るには sources.builtinnyc.detail_pages: true を設定します。Built In は数回のリクエストでそのページに確認を求めるため、Sweepy は最初の確認で止まります。
  • Glassdoor は python-jobspy 経由で動作し、sources.jobspy.glassdoor を尊重します。platforms.glassdoor のキーは存在しないため、sources 側のキーだけで無効になります。

ソースを無効にするには、いずれかのキーを false に設定します。

プロファイルが v2.2.0 より前の場合​

警告

Greenhouse と Lever は既定で動作するようになりました。Sweepy は v2.2.0 でこの動作を変えました。既存のプロファイルは、これらのソースを無効にしない限り新しい求人を検出します。フラグの既定値は変わっていません。

フラグ platforms.ashby: false、platforms.workable: false、platforms.greenhouse: false、platforms.lever: false は、これらの決定的なシードソースを止めるようになりました。v2.2.0 より前は、python-jobspy の結果だけを絞り込んでいました。

ソースは sources.<name>.enabled: false か、その platforms.<name>: false で無効にします。

シードファイルの仕組み​

プロファイルでソースのリストを空にしたとき、Sweepy は data/sources/ のシードファイルを代替として使います。

  • boards: [] のような空のリストは、厳選されたシードファイルに切り替わります。
  • 明示的なリストはシードを完全に上書きします。あなたのリストがシードを置き換えるため、エンジンが両者を統合することはありません。

あなたのリストが優先されます。どのサイトと職種カテゴリを使うかはあなたが決めます。

自分の分野の例​

気になる ATS のサイト、組織、企業、スラッグ、カテゴリを、プロファイルの sources セクションに追加します。

法務​

profiles/paralegal_nyc.yaml
sources:
ashby:
orgs:
- "crosby"
- "normlaw"
- "hargrove-firm"
- "lawhive"
workable:
slugs:
- "shegerianand-associates-1"
- "harper-james"
- "legalvision"
builtinnyc:
enabled: true
categories:
- "jobs/legal"
- "jobs/legal/search/paralegal"

テクニカルライティング​

profiles/tech_writer.yaml
sources:
greenhouse:
enabled: true
boards:
- "gitlab"
- "cloudflare"
ashby:
orgs:
- "modal"
- "perplexity"
- "replit"
lever:
enabled: true
companies:
- "spotify"
workable:
slugs:
- "soda-data-nv"
builtinnyc:
enabled: true
categories:
- "jobs/technical-writer"

医療・バイオテクノロジー​

profiles/healthcare.yaml
sources:
workable:
slugs:
- "bask-health-1"
- "atria-health"
builtinnyc:
enabled: true
categories:
- "jobs/healthcare"
ヒント

自分の分野に最も近いブロックをコピーし、すでにフォローしている企業に差し替えてください。サイトのトークンは、企業の公開採用ページのアドレスから取れます。

カスタムプラットフォーム​

platforms.custom に独自の ATS ドメインを登録します。エンジンは検出したすべての求人リンクを読み取り、あなたのドメインと比較します。Sweepy は一致した求人を専用のレポートディレクトリに振り分けます。

profiles/paralegal_nyc.yaml
platforms:
custom:
- name: "LawCrossing"
domain: "lawcrossing.com"
enabled: true
- name: "Indeed Legal"
domain: "indeed.com/legal"
enabled: true

各項目は 3 つのフィールドを取ります。

フィールド必須動作
nameはいレポートで Sweepy がこのプラットフォームに表示するラベルです。
domainはいエンジンが各求人リンクと比較するウェブのドメインまたはパスです。
enabledいいえ項目を残したまま照合を飛ばすには false を設定します。既定は true です。

任意のエンジン​

Sweepy は既定で ats と jobspy のエンジンを同梱しています。任意のエンジンは、ダウンロードすると対象のサイトが増えます。

エンジンサイトインストール前の準備
hirehuntLinkedIn、Indeed、Naukri、Shine、Internshala、Unstop、Google Careers、Amazon、Meta、Apple、Netflix、Microsoftなし
openroles指定した Greenhouse、Lever、Ashby、Workday のサイトcompanies のスラッグ
jobdropGoogle、Wellfound、Workday、iCIMS、Dice、USAJobs を含む 33 のサイトJobSpy と併用する場合は --allow-engine-conflicts を渡します
apifyマネージドのアクター経由の LinkedInAPIFY_TOKEN と Apify の課金

互換性のあるエンジンをまとめてインストールします。

ターミナル
sweepy --install-engines all

all の組は JobDrop を飛ばします。JobDrop は curl-cffi<0.8 を指定しますが、JobSpy は curl_cffi>=0.16.2 を必要とするためです。

JobDrop だけをインストールするには、次のコマンドを実行します。

ターミナル
sweepy --install-engines jobdrop --allow-engine-conflicts

セットアップウィザードの Download job engines でも同じインストールを実行します。その後、sources.enabled にエンジンを挙げ、サイトの設定を指定します。

profiles/paralegal_nyc.yaml
sources:
enabled: [jobspy, ats, openroles]
openroles:
companies:
- "figma"
- "stripe"

通信量とのトレードオフ​

Greenhouse のサイトは、ボードごとに 1 回のリクエストで全内容を求めるため、?content=true を付けます。すると説明、部門、給与のメタデータが採点できる状態で届きます。何百件もの求人を返すサイトもあるため、シードしたすべてのサイトを合わせると、1 回のスイープで数十メガバイト弱を取得することがあります。

Sweepy はそのコストを 3 つの方法で抑えます。

  • 各レコードを正規化するときに、プロファイルの titles で求人を事前に絞り込みます。
  • シードしたソースごとに 1 回ずつリクエストを送り、並列には送りません。
  • リクエストの間に SWEEPY_SOURCE_DELAY の間隔(既定は 0.2 秒)だけ待ちます。

シードリストが小さいほど早く終わります。スイープが遅く感じる場合は、まずシードリストを削ってください。

プラットフォームの互換性​

Sweepy は素の HTML を取得し、ヘッドレスブラウザーなしで動作するため、プラットフォームの種類によって返るデータが少なくなります。

プラットフォームの種類例互換性注意点
公開 ATSGreenhouse、Ashby、Lever、Workable、SmartRecruiters、Breezy HR完全に対応Sweepy は標準的なサーバー描画の求人ページを解析し、各リンクが応答するかを確認します。
クライアント描画の SPAmyworkdayjobs.com の Workday、Oracle HCM限定的これらのプラットフォームはクライアント側の JavaScript で求人ページを描画します。ヘッドレスブラウザーがないと、最初の HTML に説明が含まれないことがあります。
認証で保護されたポータルHandshake、社内イントラネット非対応これらのポータルはセッション Cookie か SSO の認証情報を必要とします。
ボット対策のあるアグリゲーターCloudflare Turnstile や PerimeterX を使うサイトレート制限あり自動の HTTP リクエストは、プロキシを切り替えないと HTTP 403 の遮断を招くことがあります。
注記

アグリゲーターフィードに含まれる場合は、レポートに Workday の求人が現れることがあります。Sweepy はリンクを検証し、ペイロードに含まれるテキストでその求人を採点します。