全文がある求人カードと本文が少ない求人カードが、元ページとの照合に進む。不完全なカード2枚は確認対象のグループに残る。
保存された求人の詳細本文を元ページと照合します。

収集の設定

求人データの収集には、Indeed Jobs Scraper Task Presetの保存済み入力設定を使い、Indeed Jobs Scraper Actorを実行します。目的に合う検索クエリと国をそれぞれ1つ指定し、`maxItems=2`、`maxPagesPerSearch=1`、`saveOnlyUniqueItems=true`を設定してください。Indeedは自動的に詳細全文の取得を試みるため、読者がfetchJobDetailsを設定する必要はありません。`scrapeCompanyDetails`による企業情報の補完は、別の機能です。

出力スキーマには、`jobId`、`jobUrl`、`title`、`companyName`、`locationRaw`、`scrapedAt`、`descriptionStatus`、`descriptionText`、`descriptionSnippet`、`descriptionHtml`が含まれます。`descriptionText`には、取得できた場合にプレーンテキスト形式の全文が入り、`descriptionSnippet`にはプレビュー文が入ります。`descriptionHtml`は、元の形式を保持した証拠として使います。HTMLだけでは、同じ求人の情報であることも、内容が完全であることも証明できません。元ページと同じ求人であることを照合し、実際の全文を確認する必要があります。

Actorのステータス値は、厳密に小文字の`full`と`missing`です。「スニペットのみ」と「取得不可」は、読者が確認のために使う分類であり、Actorが返すと保証されているステータスではありません。ステータスや文章の長さだけでは、本文が完全であるとは証明できません。

収集方法

  1. 収集の目的を決めてください。業務内容や必須条件など、元ページのどの部分が必要かを決めます。これによって、取得できた本文が十分かどうかを判断できます。単純な単語数では判断できません。
  2. 検索結果の小さなサンプルを収集してください。元の求人を特定する情報、本文の各フィールド、ステータス、観測時刻、出力を保存します。保存された行、取得件数などの上限、失敗を確認してください。
  3. 作業用に「詳細全文の候補」「スニペットのみ」「取得不可」の3つのグループを作成してください。ステータスがfullでも本文が空欄なら、確認対象にします。見慣れないステータスがある場合は、推測せず、その値を保持して確認してください。
  4. 該当する求人のリンクを開き、元ページの求人ID、職種名、企業、勤務地を照合してください。抽出した業務内容と応募資格が、その求人のものか確認します。おすすめ求人や検索結果のプレビューには、別の求人の本文が含まれる場合があります。
  5. 元ページの必要な項目と、収集した本文を比較してください。重要な項目が欠けている場合は、分析を保留します。必要に応じて、元の形式を保持した証拠として`descriptionHtml`を保存してください。ただし、HTMLだけでは、同じ求人の情報であることも、内容が完全であることも証明できません。収集後に元ページが変わる可能性があるため、確認時刻を記録してください。
  6. スニペットのみ、または取得不可の場合は、後で元ページにアクセスできるようになれば、小規模な再試行が役立つ可能性があります。ただし、再試行を際限なく繰り返したり、アクセス制限に違反したりしないでください。可能であれば、公式の元ページを手動で確認します。以前の確認結果と新しい確認結果は分けて保持してください。全文を引き続き取得できない場合は、その行を分析から除外します。
  7. 求人キー、ステータス、必要な項目、元ページとの照合結果、確認日、判定を含む分析可否の管理表を保存してください。後続の分析では、この判定を使用可否の条件にする必要があります。スニペットであることが分からなくなる統合列を基準にしてはいけません。

架空の例と結果

この節の元ページの本文と確認結果は、すべて架空のものです。収集した4件の求人を使い、手順を説明します。

  • J1のステータスはfullです。本文には業務内容、勤務地、規定が含まれています。求人IDと企業が元ページと一致しています。あらかじめ定めた分析に使用可能と判定します。
  • J2のステータスはmissingで、読者用の「スニペットのみ」グループに分類します。プレビューには短い紹介文がありますが、応募資格の全容が欠けています。全文を確認するまでは、応募要件の分析から除外します。
  • J3のステータスはmissingで、読者用の「取得不可」グループに分類します。本文はnullです。元ページには、現在利用できないアクセス手段が必要です。判定は不明のままにします。
  • J4のステータスはfullですが、長い本文には、取得対象の求人とは異なる職種名と企業名が記載されています。この不一致を確認します。文章の長さやステータスを証拠にして、使用可能と判定してはいけません。
架空の例と結果
求人Actorのステータス元ページとの照合判定
J1full一致使用可能
J2missingスニペット保留
J3missing取得不可不明
J4full不一致要確認

Actorがfullと判定した行は4件中2件、つまり50パーセントです。元ページと照合し、分析に使用可能と確認できた行は4件中1件、つまり25パーセントです。これらの数値は、この架空の小さな検証用テストデータにおける異なる段階を測定しています。どちらもActor全体の精度を示すスコアではありません。

後の確認でJ2の正しい詳細が取得できた場合は、その新しい確認結果を追記します。この同じ4件の求人の例では、分析に使用可能な割合が4件中2件、つまり50パーセントになります。過去の状態はそのまま保持します。最初のファイルを書き換えたり、後の値を初回の充足率として報告したりしてはいけません。最終成果物は、ステータスと元ページとの照合結果を記録した4行の管理表です。初回の時点で応募要件の分析に使用可能と判定されるのは、J1だけです。

出典と参考資料

著者 Chronometrica · 更新日

ページの先頭へ ↑