linkedin-sourcer について
linkedin-sourcer は、LinkedIn で候補者を探し、プロフィールを抽出して職務要件との適合度を評価する採用向けスキルです。ブール検索クエリの作成や候補者の比較にも対応します。
主な機能
- 01構造化プロフィールの抽出
- 02ブール検索クエリの作成
- 03職務要件に沿った候補者評価
- 04候補者の比較と順位付け
活用シーン
- 01候補者プロフィールの収集
- 02職務要件に合う人材の検索
- 03同一職種の候補者比較
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ kylemclaren/ linkedin-sourcer --skill linkedin-sourcerインストール後、Claude Code で/linkedin-sourcerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/linkedin_scraper_api.mdsourcing_workflows.mdscripts/create_session.pyscrape_profile.py詳細
LinkedIn Sourcer
linkedin_scraper ライブラリ(v3.0 以上、Playwright ベース、非同期)を使用して、LinkedIn から候補者を探し、プロフィールを分析し、職務要件との適合度を評価します。
前提条件
スクレイピングを行う前に、依存関係がインストールされていることを確認してください。
pip install linkedin-scraper
playwright install chromium
認証済みのセッションファイル(session.json)が必要です。まだない場合は、作成してください。
プログラムによるログイン(認証情報を使用):
python3 scripts/create_session.py --email [email protected] --password PASS
または、環境変数を使用します。
export [email protected]
export LINKEDIN_PASSWORD=mypassword
python3 scripts/create_session.py
手動ログイン(ブラウザーウィンドウが開きます。プログラムによるログインが CAPTCHA/2FA により失敗した場合に使用してください):
python3 scripts/create_session.py
LinkedIn によって期限切れにされるまでは、セッションファイルを再利用できます。ブラウザーの設定オプションについては、references/linkedin_scraper_api.md を参照してください。
ワークフローの判断ツリー
タスクの種類を判断します。
- 「このプロフィール/これらのプロフィールをスクレイピングする」 → プロフィールのスクレイピング
- 「この職務の候補者を探す」 → 候補者の検索
- 「この職務に対する候補者の適性を評価する」 → 候補者の評価
- 「これらの候補者を比較する」 → 候補者の比較
1. プロフィールのスクレイピング
scripts/scrape_profile.py を実行して、構造化されたプロフィールデータを抽出します。
python3 scripts/scrape_profile.py "https://linkedin.com/in/username" --session session.json
複数のプロフィールの場合:
python3 scripts/scrape_profile.py URL1 URL2 URL3 --delay 2 --output profiles.json
出力は、name、headline、location、about、experiences、educations、skills を含む JSON です。
カスタムコード内で直接スクレイピングする方法については、references/linkedin_scraper_api.md → PersonScraper を参照してください。
2. 候補者の検索
ユーザーが LinkedIn または Google に貼り付けて候補者を探せるブール検索クエリを生成します。テンプレートと例については、references/sourcing_workflows.md → Boolean Search String Patterns を参照してください。提示された職務要件に合わせて、ブール検索文字列を調整してください。
3. 候補者の評価
プロフィールをスクレイピングした後、職務記述書に照らして適合度を評価します。
- 候補者のプロフィールをスクレイピングします
references/sourcing_workflows.md→ Candidate Scorecard Template のスコアカードテンプレートを適用します- スクレイピングしたデータに基づき、各基準を評価し(1~5)、メモを記入します
- 総合的な適合度を、STRONG_FIT、GOOD_FIT、PARTIAL_FIT、WEAK_FIT のいずれかで判定します
- 強み、懸念事項、アプローチ時の主な質問を特定します
評価を行う際は、references/sourcing_workflows.md → Evaluation Heuristics の評価ヒューリスティクスを参考にしてください。
候補者 1 名をすばやく評価する場合は、代わりに Candidate Summary Template を使用してください。
4. 候補者の比較
同じ職務について複数の候補者を評価する場合:
- すべての候補者のプロフィールをスクレイピングします
references/sourcing_workflows.md→ Candidate Comparison Table の比較表を適用します- 根拠を添えて候補者を順位付けします
エラー処理
- AuthenticationError → セッションの有効期限が切れています。認証情報を使うか手動ログインで
scripts/create_session.pyを再実行してください - RateLimitError → 待ってから再試行してください。リクエスト間の
--delayを長くしてください - ProfileNotFoundError → プロフィールが非公開か、URL が無効です
try/except の使用例については、references/linkedin_scraper_api.md → Error Handling を参照してください。
レート制限
リクエストの間には必ず遅延を設けてください(スクリプトのデフォルトは 2 秒です)。大量に処理する場合は、3~5 秒に増やしてください。積極的なスクレイピングは避け、LinkedIn のレート制限を遵守してください。