Upwork 職缺抓取與提案生成
目標
抓取 Upwork 工作列表並生成個人化的提案與具說服力的求職信。
腳本
./scripts/upwork_apify_scraper.py- 透過 Apify 抓取 Upwork 職缺./scripts/upwork_proposal_generator.py- 使用 Claude 生成提案./scripts/update_sheet.py- 儲存至 Google Sheets
流程
1. 抓取職缺
python3 ./scripts/upwork_apify_scraper.py \
--query "AI automation" \
--limit 50 \
--output .tmp/upwork_jobs.json
2. 生成提案
python3 ./scripts/upwork_proposal_generator.py \
--jobs .tmp/upwork_jobs.json \
--output .tmp/proposals.json
使用 Claude Opus 4.5 生成高品質、個人化的求職信。
3. 儲存至試算表
python3 ./scripts/update_sheet.py .tmp/proposals.json --title "Upwork Proposals"
輸出
Google 試算表,包含:
- 職缺詳細資料(職稱、描述、預算、客戶資訊)
- 生成的提案/求職信
- 應徵連結
環境變數
APIFY_API_TOKEN=your_token
ANTHROPIC_API_KEY=your_key
結構定義
輸入
| 名稱 | 類型 | 必要 | 說明 |
|---|---|---|---|
query | string | 是 | 搜尋查詢(例如 'AI automation') |
limit | integer | 否 | 最大職缺數量(預設:50) |
輸出
| 名稱 | 類型 | 說明 |
|---|---|---|
sheet_url | string | 包含職缺詳細資料與生成提案的 Google 試算表連結 |
憑證
| 名稱 | 來源 |
|---|---|
APIFY_API_TOKEN | .env |
ANTHROPIC_API_KEY | .env |
成本
Apify 點數 + Claude API 使用費