๐ ไธ้ตๆๅๅๅคงๆฑ่ท็ถฒ็ซ่ท็ผบๅฐ Notion๏ผๆฏๆด AI ๆบๆ งๅๆๅๅค่ช่จไป้ข
- ๐ ๅคๅนณๅฐๆฏๆด๏ผๆฏๆด LinkedInใ104ไบบๅ้่กใ1111ไบบๅ้่กใYouratorใCakeResume
- ๐ค AI ๆบๆ งๅๆ๏ผๆฏๆด OpenAI ๅ OpenRouter๏ผ่ชๅๅๆ่ท็ผบๅ งๅฎนไธฆๆๅ้้ต่ณ่จ
- ๐ Notion ๆดๅ๏ผไธ้ตๅฐ่ท็ผบ่ณๆๅฒๅญๅฐๆจ็ Notion ่ณๆๅบซ
- ๐ ๅค่ช่จๆฏๆด๏ผๆไพ็น้ซไธญๆๅ่ฑๆไป้ข
- โก ่ชๅๅๆต็จ๏ผๆบๆ ง้ธๆ็ถ้ ้ขใ่ชๅๅปบ็ซ่ณๆๅบซ
- ๐ง ๅฝๆง่จญๅฎ๏ผๆฏๆด่ชๅฎ็พฉ่ณๆๅบซๆฌไฝๅ AI ๆจกๅ้ธๆ
| ็ถฒ็ซ | URL ๅน้ ๆจกๅผ | ็ๆ |
|---|---|---|
linkedin.com/jobs/view/* |
โ ๅฎๅ จๆฏๆด | |
| 104ไบบๅ้่ก | 104.com.tw/job/* |
โ ๅฎๅ จๆฏๆด |
| 1111ไบบๅ้่ก | 1111.com.tw/job/* |
โ ๅฎๅ จๆฏๆด |
| Yourator | yourator.co/jobs/* |
โ ๅฎๅ จๆฏๆด |
| CakeResume | cakeresume.com/jobs/* |
โ ๅฎๅ จๆฏๆด |
ๅณๅฐไธๆถ๏ผๆฌ่ซๆๅพ
-
ไธ่ผๅฐๆก
git clone https://github.com/your-username/universal-job-scraper.git cd universal-job-scraper -
้ๅ Chrome ๆดๅ ๅ่ฝ้ ้ข
- ้ๅ Chrome ็่ฆฝๅจ
- ๅๅพ
chrome://extensions/ - ้ๅๅณไธ่ง็ใ้็ผไบบๅกๆจกๅผใ
-
่ผๅ ฅๆดๅ ๅ่ฝ
- ้ปๆใ่ผๅ ฅๆชๅฐ่ฃ้ ็ฎใ
- ้ธๆๅฐๆก่ณๆๅคพ
- ็ขบ่ชๆดๅ ๅ่ฝๅทฒๆๅ่ผๅ ฅ
-
ๅๅพ Notion Token
- ๅๅพ Notion Integrations
- ้ปๆใ+ New integrationใ
- ๅกซๅ ฅๅบๆฌ่ณ่จไธฆๅปบ็ซ Integration
- ่ค่ฃฝ
Internal Integration Token
-
ๆบๅ Notion ้ ้ข
- ๅจ Notion ไธญๅปบ็ซไธๅ็จๆผๅญๆพ่ท็ผบ็้ ้ข
- ๅจ้ ้ข่จญๅฎไธญ๏ผ้่ซๆจๅๅปบ็ซ็ Integration
-
้ๅๆดๅ ๅ่ฝ
- ้ปๆ็่ฆฝๅจๅทฅๅ ทๅ็ๆดๅ ๅ่ฝๅ็คบ
- ๆไฝฟ็จๅฟซๆท้ตๆ้
-
Notion ่จญๅฎ
- ้ปๆใโ๏ธ Notion ่จญๅฎใๅฑ้่จญๅฎๅๅก
- ๅกซๅ ฅ Integration Token
- ้ปๆใ๐ฅ ่ผๅ ฅๅฏ็จ้ ้ขใ
- ้ธๆ็ถ้ ้ข
- ้ธๆ็พๆ่ณๆๅบซๆๅปบ็ซๆฐ่ณๆๅบซ
- ้ปๆใ๐พ ๅฒๅญ่จญๅฎใ
-
AI ่จญๅฎ๏ผๅฏ้ธ๏ผ
- ้ๅใ๐ค ๅ็จ AI ๅๆใ
- ้ปๆใ๐ค AI ่จญๅฎใๅฑ้่จญๅฎๅๅก
- ้ธๆ AI ๅนณๅฐ๏ผOpenAI ๆ OpenRouter๏ผ
- ๅกซๅ ฅ API Key
- ้ปๆใ๐ ่ผๅ ฅๆจกๅๅ่กจใไธฆ้ธๆๆจกๅ
- ้ปๆใ๐พ ๅฒๅญ AI ่จญๅฎใ
- ๅๅพๆฏๆด็ๆฑ่ท็ถฒ็ซ
- ้ๅ่ท็ผบ่ฉณ็ดฐ้ ้ข
- ้ปๆๆดๅ ๅ่ฝๅ็คบ
- ้ปๆใ๐ ๆๅ่ท็ผบใๆ้
- ็ญๅพ ่็ๅฎๆ๏ผ่ณๆๅฐ่ชๅๅฒๅญๅฐ Notion
้ ่จญ็ Notion ่ณๆๅบซๅ ๅซไปฅไธๆฌไฝ๏ผ
| ๆฌไฝๅ็จฑ | ้กๅ | ่ชชๆ |
|---|---|---|
| ่ทไฝๅ็จฑ | Title | ่ท็ผบๆจ้ก |
| ๅ ฌๅธ | Rich Text | ๅ ฌๅธๅ็จฑ |
| ๅทฅไฝๅฐ้ป | Rich Text | ๅทฅไฝๅฐ้ป |
| ่ช่ณ | Rich Text | ่ช่ณ็ฏๅ |
| ่ท็ผบ้ฃ็ต | URL | ๅๅง่ท็ผบ้ฃ็ต |
| ็ณ่ซ็ๆ | Select | ็ณ่ซ้ฒๅบฆ่ฟฝ่นค |
| ็ณ่ซๆฅๆ | Date | ็ณ่ซๆ้ |
| ๅทฅไฝๆ่ฟฐ | Rich Text | ่ท็ผบๆ่ฟฐๅ งๅฎน |
| ๆ่ฝ่ฆๆฑ | Multi-select | ๆ้ๆ่ฝๆจ็ฑค |
| ๅ่จป | Rich Text | ๅไบบๅ่จป |
็ถๅ็จ AI ๅๆๆ๏ผ็ณป็ตฑๆ๏ผ
- ๐ ่ชๅๆๅไธฆ็ตๆงๅ่ท็ผบ่ณ่จ
- ๐ท๏ธ ็ๆ็ธ้ๆ่ฝๆจ็ฑค
- ๐ ๅๆ่ช่ณ็ฏๅๅ็ฆๅฉ
- ๐ก ๆไพ่ท็ผบไบฎ้ปๆ่ฆ
- OpenAI๏ผๆฏๆด GPT-3.5ใGPT-4 ็ญๆจกๅ
- OpenRouter๏ผๆฏๆดๅค็จฎ้ๆบๅๅๆฅญๆจกๅ
- Manifest Version: 3
- ๆ ธๅฟๆ่ก: Vanilla JavaScript (Functional Programming)
- API ๆดๅ: Notion APIใOpenAI APIใOpenRouter API
- ๆฌ้: ActiveTabใStorageใScriptingใNotifications
JobScrpy/
โโโ manifest.json # ๆดๅ
ๅ่ฝ้
็ฝฎ
โโโ popup.html # ๅฝๅบ่ฆ็ช UI
โโโ popup.js # ๅฝๅบ่ฆ็ช้่ผฏ (Functional Programming)
โโโ content.js # ๅ
งๅฎน่
ณๆฌ (Functional Programming)
โโโ background.js # ่ๆฏๆๅ
โโโ _locales/ # ๅค่ช่จๆฏๆด
โ โโโ en/messages.json # ่ฑๆ่ช่จๅ
โ โโโ zh_TW/messages.json # ็น้ซไธญๆ่ช่จๅ
โโโ icons/ # ๅ็คบๆชๆก
โ โโโ icon-16.png
โ โโโ icon-32.png
โ โโโ icon-48.png
โ โโโ icon-128.png
โโโ NOTION_OAUTH_IMPLEMENTATION.md # OAuth ๅฏฆไฝๆๅ
โโโ NOTION_IMPROVEMENT_PLAN.md # ๅ่ฝๆน้ฒ่จๅ
โโโ README.md # ๅฐๆก่ชชๆ
-
่ค่ฃฝๅฐๆก
git clone https://github.com/your-username/universal-job-scraper.git cd universal-job-scraper -
ๅฎ่ฃๅฐ Chrome
- ้ๅ
chrome://extensions/ - ๅ็จ้็ผ่ ๆจกๅผ
- ่ผๅ ฅๆชๅฐ่ฃ้ ็ฎ
- ้ๅ
-
้็ผๅ้ค้ฏ
- ไฟฎๆน็จๅผ็ขผๅพ้ๆฐ่ผๅ ฅๆดๅ ๅ่ฝ
- ไฝฟ็จ Chrome DevTools ้ฒ่ก้ค้ฏ
- ๆฅ็ Console ่ผธๅบๅ็ถฒ่ทฏ่ซๆฑ
graph TD
A[็จๆถๅจๆฑ่ท็ถฒ็ซ] --> B[้ปๆๆๅๆ้]
B --> C[content.js ๆๅ้ ้ข่ณๆ]
C --> D[็ผ้ๅฐ background.js]
D --> E{ๅ็จ AI ๅๆ?}
E -->|ๆฏ| F[่ชฟ็จ AI API ๅๆ]
E -->|ๅฆ| G[็ดๆฅ่็ๅๅง่ณๆ]
F --> H[ๅไฝต AI ๅๆ็ตๆ]
G --> I[ไธๅณๅฐ Notion]
H --> I
I --> J[่ฟๅ็ตๆ็ตฆ็จๆถ]
- OAuth 2.0 ๆดๅ๏ผๅฏฆไฝๆๅ
- ๆน้่็๏ผไธๆฌกๆๅๅคๅ่ท็ผบ
- ่ชๅ็ณ่ซ่ฟฝ่นค๏ผ่ชๅๆดๆฐ็ณ่ซ็ๆ
- ๅฑฅๆญทๅน้ ๏ผAI ๅๆ่ท็ผบ่ๅฑฅๆญท็ๅน้ ๅบฆ
- ่ช่ณๅๆ๏ผๅธๅ ด่ช่ณ่ถจๅขๅๆ
- ๆดๅคๆฑ่ท็ถฒ็ซ๏ผๆดๅฑๆฏๆดๆดๅคๅนณๅฐ
A: ่ซ็ขบ่ช๏ผ
- Integration Token ๆฏๅฆๆญฃ็ขบ
- Integration ๆฏๅฆๅทฒ้่ซๅฐ็ฎๆจ้ ้ข
- ็ถฒ่ทฏ้ฃๆฅๆฏๅฆๆญฃๅธธ
A: ่ซๆชขๆฅ๏ผ
- AI API Key ๆฏๅฆๆๆ
- ๆฏๅฆ้ธๆไบๆญฃ็ขบ็ๆจกๅ
- API ้กๅบฆๆฏๅฆๅ ่ถณ
A: ็ฎๅๆฏๆด LinkedInใ104ใ1111ใYouratorใCakeResumeใๆชไพๆ้ธ็บๆฐๅขๆดๅคๅนณๅฐใ
A: ๆจๅฏไปฅๅจ Notion ไธญๆๅไฟฎๆน่ณๆๅบซๆฌไฝ๏ผๆดๅ ๅ่ฝๆ่ชๅ้ฉๆๅคง้จๅ็ๆฌไฝ่ฎๆดใ
ๆญก่ฟ่ฒข็ป็จๅผ็ขผใๅๅ ฑๅ้กๆๆๅบๅปบ่ญฐ๏ผ
- Fork ๅฐๆก
- ๅปบ็ซๅ่ฝๅๆฏ:
git checkout -b feature/amazing-feature - ๆไบค่ฎๆด:
git commit -m 'Add some amazing feature' - ๆจ้ๅๆฏ:
git push origin feature/amazing-feature - ้ๅ Pull Request
- ๅ้กๅๅ ฑ: GitHub Issues
- ๅ่ฝๅปบ่ญฐ: GitHub Discussions
- Email: your-email@example.com
ๆฌๅฐๆกๆก็จ MIT ๆๆฌๆขๆฌพใ
- ๐ Multi-Platform Support: Support for LinkedIn, 104, 1111, Yourator, CakeResume
- ๐ค AI Smart Analysis: Supports OpenAI and OpenRouter for automatic job content analysis
- ๐ Notion Integration: One-click save job data to your Notion database
- ๐ Multi-Language: Traditional Chinese and English interface
- โก Automated Workflow: Smart parent page selection and auto database creation
- ๐ง Flexible Configuration: Custom database fields and AI model selection
| Site | URL Pattern | Status |
|---|---|---|
linkedin.com/jobs/view/* |
โ Full Support | |
| 104 | 104.com.tw/job/* |
โ Full Support |
| 1111 | 1111.com.tw/job/* |
โ Full Support |
| Yourator | yourator.co/jobs/* |
โ Full Support |
| CakeResume | cakeresume.com/jobs/* |
โ Full Support |
Coming soon
-
Download Project
git clone https://github.com/your-username/universal-job-scraper.git cd universal-job-scraper -
Open Chrome Extensions Page
- Open Chrome browser
- Navigate to
chrome://extensions/ - Enable "Developer mode" in top right
-
Load Extension
- Click "Load unpacked"
- Select project folder
- Confirm extension is loaded successfully
-
Get Notion Token
- Go to Notion Integrations
- Click "+ New integration"
- Fill in basic info and create integration
- Copy the
Internal Integration Token
-
Prepare Notion Page
- Create a page in Notion for storing job data
- In page settings, invite your newly created integration
-
Open Extension
- Click extension icon in browser toolbar
- Or use keyboard shortcut
-
Notion Settings
- Click "โ๏ธ Notion Configuration" to expand settings
- Enter Integration Token
- Click "๐ฅ Load Available Pages"
- Select parent page
- Choose existing database or create new one
- Click "๐พ Save Configuration"
-
AI Settings (Optional)
- Enable "๐ค Enable AI Analysis"
- Click "๐ค AI Configuration" to expand settings
- Choose AI platform (OpenAI or OpenRouter)
- Enter API Key
- Click "๐ Load Model List" and select model
- Click "๐พ Save AI Configuration"
- Navigate to supported job site
- Open job detail page
- Click extension icon
- Click "๐ Scrape Job" button
- Wait for processing, data will be saved to Notion automatically
Default Notion database includes these fields:
| Field Name | Type | Description |
|---|---|---|
| Job Title | Title | Job position title |
| Company | Rich Text | Company name |
| Location | Rich Text | Work location |
| Salary | Rich Text | Salary range |
| Job URL | URL | Original job posting link |
| Application Status | Select | Application progress tracking |
| Application Date | Date | When applied |
| Job Description | Rich Text | Job description content |
| Skills Required | Multi-select | Required skill tags |
| Notes | Rich Text | Personal notes |
When AI analysis is enabled, the system will:
- ๐ Automatically extract and structure job information
- ๐ท๏ธ Generate relevant skill tags
- ๐ Analyze salary range and benefits
- ๐ก Provide job highlight summaries
- OpenAI: Supports GPT-3.5, GPT-4, and other models
- OpenRouter: Supports various open-source and commercial models
- Manifest Version: 3
- Core Technology: Vanilla JavaScript (Functional Programming)
- API Integration: Notion API, OpenAI API, OpenRouter API
- Permissions: ActiveTab, Storage, Scripting, Notifications
JobScrpy/
โโโ manifest.json # Extension configuration
โโโ popup.html # Popup window UI
โโโ popup.js # Popup window logic (Functional Programming)
โโโ content.js # Content script (Functional Programming)
โโโ background.js # Background service
โโโ _locales/ # Multi-language support
โ โโโ en/messages.json # English language pack
โ โโโ zh_TW/messages.json # Traditional Chinese language pack
โโโ icons/ # Icon files
โ โโโ icon-16.png
โ โโโ icon-32.png
โ โโโ icon-48.png
โ โโโ icon-128.png
โโโ NOTION_OAUTH_IMPLEMENTATION.md # OAuth implementation guide
โโโ NOTION_IMPROVEMENT_PLAN.md # Feature improvement plan
โโโ README.md # Project documentation
-
Clone Project
git clone https://github.com/your-username/universal-job-scraper.git cd universal-job-scraper -
Install to Chrome
- Open
chrome://extensions/ - Enable developer mode
- Load unpacked extension
- Open
-
Development and Debugging
- Reload extension after code changes
- Use Chrome DevTools for debugging
- Check Console output and network requests
graph TD
A[User on Job Site] --> B[Click Scrape Button]
B --> C[content.js Extracts Page Data]
C --> D[Send to background.js]
D --> E{AI Analysis Enabled?}
E -->|Yes| F[Call AI API for Analysis]
E -->|No| G[Process Raw Data]
F --> H[Merge AI Analysis Results]
G --> I[Upload to Notion]
H --> I
I --> J[Return Result to User]
- OAuth 2.0 Integration: Implementation Guide
- Batch Processing: Scrape multiple jobs at once
- Auto Application Tracking: Automatically update application status
- Resume Matching: AI analysis of job-resume compatibility
- Salary Analysis: Market salary trend analysis
- More Job Sites: Expand support for more platforms
A: Please confirm:
- Integration Token is correct
- Integration has been invited to target page
- Network connection is stable
A: Please check:
- AI API Key is valid
- Correct model is selected
- API quota is sufficient
A: Currently supports LinkedIn, 104, 1111, Yourator, CakeResume. More platforms will be added in the future.
A: You can manually modify database fields in Notion, and the extension will automatically adapt to most field changes.
Contributions, issues, and feature requests are welcome!
- Fork the project
- Create feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add some amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open Pull Request
- Bug Reports: GitHub Issues
- Feature Requests: GitHub Discussions
- Email: your-email@example.com
This project is licensed under the MIT License.
- Notion API - For providing excellent database integration
- OpenAI - For AI analysis capabilities
- OpenRouter - For diverse AI model access
- Chrome Extensions - For the extension platform
Made with โค๏ธ by [Your Name]