ホームページ >バックエンド開発 >Python チュートリアル >Python と LLM を使用してスタートアップの求人を検索する
多くの企業 Web サイトでは、主流の求人サイトでは必ずしも見つけられない求人情報が掲載されています。たとえば、遠隔地のスタートアップ企業では求人サイトに掲載されていないこともあるため、仕事を見つけるのは難しい場合があります。これらの求人を見つけるには、次のものが必要です:
これは非常に時間がかかりますが、自動化します。
Parsera ライブラリを使用してジョブのスクレイピングを自動化します。 Parsera には 2 つの使用オプションがあります:
まず、必要なパッケージをインストールします:
<code>pip install parsera playwright install</code>ローカルセットアップを実行しているため、LLM 接続が必要です。簡単にするために、OpenAI の gpt-4o-mini を使用し、環境変数を 1 つだけ設定する必要があります:
<code>import os from parsera import Parsera os.environ["OPENAI_API_KEY"] = "<your_openai_api_key_here>" scraper = Parsera(model=llm) </your_openai_api_key_here></code>すべてのセットアップが完了したら、クロールを開始できます。
ステップ 1: 最新のシリーズ A 資金調達スタートアップのリストを取得する
これらの企業の国と Web サイトを取得してみましょう:
<code>url = "https://growthlist.co/series-a-startups/" elements = { "Website": "公司的网站", "Country": "公司的国家", } all_startups = await scraper.arun(url=url, elements=elements)</code>国の情報を使用して、興味のある国をフィルタリングできます。検索を米国に絞り込んでみましょう:
<code>us_websites = [ item["Website"] for item in all_startups if item["Country"] == "United States" ]</code>ステップ 2: 採用ページを探す
<code>from urllib.parse import urljoin # 定义我们的目标 careers_target = {"url": "职业页面网址"} careers_pages = [] for website in us_websites: website = "https://" + website result = await scraper.arun(url=website, elements=careers_target) if len(result) > 0: url = result[0]["url"] if url.startswith("/") or url.startswith("./"): url = urljoin(website, url) careers_pages.append(url)</code>オプションで、このステップを検索 API に置き換え、LLM 呼び出しを検索呼び出しに置き換えることができることに注意してください。
ステップ 3: 募集中の求人を取得する
<code>jobs_target = { "Title": "职位的名称", "Location": "职位的所在地", "Link": "职位发布的链接", "SE": "如果这是软件工程职位,则为True,否则为False", } jobs = [] for page in careers_pages: result = await scraper.arun(url=page, elements=jobs_target) if len(result) > 0: for row in result: row["url"] = page row["Link"] = urljoin(row["url"], row["Link"]) jobs.extend(result)</code>すべてのポジションを抽出したら、ソフトウェア エンジニアリング以外のポジションをすべて除外し、.csv ファイルに保存できます。
<code>import csv engineering_jobs = [job for job in jobs if job["SE"] == "True"] with open("jobs.csv", "w") as f: write = csv.writer(f) write.writerow(engineering_jobs[0].keys()) for job in engineering_jobs: write.writerow(job.values()) </code>最後に、以下に示すように、ポジションのリストを含むテーブルを取得します。
职位名称 | 所在地 | 链接 | 软件工程职位 | 网址 |
---|---|---|---|---|
AI技术主管经理 | 班加罗尔 | https://job-boards.greenhouse.io/enterpret/jobs/6286095003 | True | https://boards.greenhouse.io/enterpret/ |
后端开发人员 | 特拉维夫 | https://www.upwind.io/careers/co/tel-aviv/BA.04A/backend-developer/all#jobs | True | https://www.upwind.io/careers |
... | ... | ... | ... | ... |
次に、同じプロセスを繰り返して、完全なジョブ リストからさらに多くの情報を抽出します。たとえば、技術スタックを取得したり、リモートのスタートアップでのジョブのフィルターを取得したりできます。これにより、すべてのページを手動で確認する時間を節約できます。リンク フィールドを自分で繰り返して、興味のある要素を抽出してみることができます。
この記事がお役に立てば幸いです。ご質問がございましたらお知らせください。
以上がPython と LLM を使用してスタートアップの求人を検索するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。