ScavioScavio
产品定价文档
登录开始使用
  1. 首页
  2. 教程
  3. 如何使用 n8n 构建求职代理(无代码)
教程

如何使用 n8n 构建求职代理(无代码)

在 n8n 中构建一个自动化职位搜索代理,用于查找新列表、按条件过滤并发送每日电子邮件摘要。需要零编码。

获取免费API密钥API文档

每天检查工作委员会是很乏味的。本教程构建了一个 n8n 工作流程,自动搜索职位列表,根据您的条件(位置、薪资、远程状态)对其进行过滤,并向您发送每日电子邮件摘要。整个工作流程是使用 n8n 的可视化构建器的无代码。搜索步骤通过 n8n 的 HTTP 请求节点使用 Scavio API,每次搜索费用为 0.005 美元。每天运行两次的费用约为每月 0.30 美元。

前置条件

  • n8n 安装(自托管或云)
  • 来自 scavio.dev 的 Scavio API 密钥
  • 用于发送摘要的电子邮件帐户

操作指南

步骤 1: 配置用于搜索的 n8n HTTP 请求节点

设置 HTTP 请求节点以调用 Scavio 搜索 API。这是工作流程的核心搜索步骤。

Python
# n8n HTTP Request Node Configuration:
# Method: POST
# URL: https://api.scavio.dev/api/v1/search
# Authentication: None (we use header auth)
# Headers:
#   x-api-key: {{$env.SCAVIO_API_KEY}}
#   Content-Type: application/json
# Body (JSON):
#   {
#     "query": "software engineer remote jobs 2026",
#     "country_code": "us",
#     "num_results": 10
#   }

# Python equivalent for testing outside n8n:
import requests, os

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']

def search_jobs(query: str) -> list:
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
        json={'query': query, 'country_code': 'us', 'num_results': 10})
    return resp.json().get('organic_results', [])

results = search_jobs('software engineer remote jobs 2026')
for r in results[:3]:
    print(f'{r["title"][:50]}: {r["link"]}')

步骤 2: 添加作业过滤逻辑

过滤搜索结果以符合您的条件。在 n8n 中,使用 IF 节点或 Function 节点来应用这些过滤器。

Python
# n8n Function Node - Filter Jobs
# This code runs inside n8n's Function node

# For Python testing:
def filter_jobs(results: list, criteria: dict) -> list:
    filtered = []
    for r in results:
        text = (r.get('title', '') + ' ' + r.get('snippet', '')).lower()
        # Check required keywords
        has_required = all(kw.lower() in text for kw in criteria.get('required_keywords', []))
        # Check excluded keywords
        has_excluded = any(kw.lower() in text for kw in criteria.get('excluded_keywords', []))
        # Check salary mentions
        has_salary = any(s in text for s in ['$', 'salary', 'compensation', '/yr', '/year'])
        if has_required and not has_excluded:
            filtered.append({
                'title': r['title'],
                'url': r['link'],
                'snippet': r.get('snippet', ''),
                'has_salary_info': has_salary
            })
    return filtered

criteria = {
    'required_keywords': ['remote', 'engineer'],
    'excluded_keywords': ['senior staff', 'principal', 'intern'],
}

filtered = filter_jobs(results, criteria)
print(f'{len(filtered)}/{len(results)} jobs match criteria')
for j in filtered:
    print(f'  {j["title"][:50]}')

步骤 3: 构建电子邮件摘要

将过滤后的作业格式化为 HTML 电子邮件摘要。在 n8n 中,使用带有格式化正文的发送电子邮件节点。

Python
from datetime import datetime

def build_digest(jobs: list, query: str) -> str:
    date = datetime.now().strftime('%B %d, %Y')
    html = f'<h2>Job Search Digest - {date}</h2>\n'
    html += f'<p>Search: <em>{query}</em> | Found: {len(jobs)} matches</p>\n'
    html += '<hr>\n'
    for i, job in enumerate(jobs, 1):
        html += f'<h3>{i}. <a href="{job["url"]}">{job["title"]}</a></h3>\n'
        html += f'<p>{job["snippet"][:200]}</p>\n'
        if job.get('has_salary_info'):
            html += '<p><strong>Has salary information</strong></p>\n'
        html += '<hr>\n'
    html += f'<p><small>Cost: $0.005 | Powered by Scavio Search API</small></p>'
    return html

# n8n Cron Trigger: Run at 8am and 6pm daily
# n8n Schedule: 0 8,18 * * *

digest = build_digest(filtered, 'software engineer remote jobs 2026')
print(f'Digest generated: {len(digest)} chars')
print(f'Daily cost: 2 searches = $0.01')
print(f'Monthly cost: ~$0.30')

Python 示例

Python
import requests, os
from datetime import datetime

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']

def job_search_digest(query, required=None, excluded=None):
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
        json={'query': query, 'country_code': 'us', 'num_results': 10})
    jobs = []
    for r in resp.json().get('organic_results', []):
        text = (r['title'] + ' ' + r.get('snippet', '')).lower()
        if required and not all(k.lower() in text for k in required):
            continue
        if excluded and any(k.lower() in text for k in excluded):
            continue
        jobs.append({'title': r['title'], 'url': r['link']})
    print(f'Job Digest - {datetime.now().strftime("%B %d")}:')
    for j in jobs:
        print(f'  {j["title"][:50]}: {j["url"]}')
    return jobs

job_search_digest('remote python developer jobs 2026', required=['remote', 'python'])

JavaScript 示例

JavaScript
const SCAVIO_KEY = process.env.SCAVIO_API_KEY;

async function jobDigest(query, required = [], excluded = []) {
  const resp = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query, country_code: 'us', num_results: 10 })
  });
  const results = (await resp.json()).organic_results || [];
  const jobs = results.filter(r => {
    const text = (r.title + ' ' + (r.snippet || '')).toLowerCase();
    return required.every(k => text.includes(k.toLowerCase()))
      && !excluded.some(k => text.includes(k.toLowerCase()));
  });
  jobs.forEach(j => console.log(`${j.title.slice(0, 50)}: ${j.link}`));
  return jobs;
}

jobDigest('remote python developer jobs 2026', ['remote', 'python']);

预期输出

JSON
software engineer remote jobs 2026: https://...
Remote Software Engineer - TechCorp: https://...
Senior Remote Engineer at StartupX: https://...

5/10 jobs match criteria
  Remote Software Engineer - TechCorp
  Full Stack Engineer - Remote at ScaleUp

Digest generated: 1240 chars
Daily cost: 2 searches = $0.01
Monthly cost: ~$0.30

相关教程

  • 如何在五分钟内将搜索添加到 n8n 工作流程
  • 如何通过 SERP 丰富构建本地潜在客户渠道
  • 如何设置您的第一个 AI 代理搜索工具

常见问题

大多数开发者在15到30分钟内完成本教程。您需要一个Scavio API密钥(免费套餐即可)和可用的Python或JavaScript环境。

n8n 安装(自托管或云). 来自 scavio.dev 的 Scavio API 密钥. 用于发送摘要的电子邮件帐户. Scavio API密钥注册即送50个免费积分。

可以。免费套餐注册即送50个积分,完全足够完成本教程并构建一个可运行的原型解决方案。

Scavio提供原生LangChain包(langchain-scavio)、MCP服务器以及适用于任何HTTP客户端的REST API。本教程使用 the raw REST API, 但您可以根据需要适配您选择的框架。

相关资源

Best Of

2026年n8n工作流最佳搜索API

Read more
Best Of

2026 年最佳 n8n 搜索 API 集成

Read more
Comparison

Web Scraping in n8n (HTTP Request + HTML Extract) vs Search API in n8n (HTTP Request to search API)

Read more
Use Case

n8n 搜索数据增强工作流

Read more
Glossary

搜索 API 供应商格局(2026)

Read more
Comparison

Firecrawl vs Scavio

Read more

开始构建

在 n8n 中构建一个自动化职位搜索代理,用于查找新列表、按条件过滤并发送每日电子邮件摘要。需要零编码。

获取免费API密钥阅读文档
ScavioScavio

面向AI智能体的实时搜索API。搜索所有平台,不仅仅是Google。

产品

  • 功能
  • 定价
  • 控制台
  • 联盟计划

开发者

  • 文档
  • API参考
  • 快速开始
  • MCP集成
  • Python SDK

替代方案

  • Tavily替代方案
  • SerpAPI替代方案
  • Firecrawl替代方案
  • Exa替代方案

工具

  • JSON格式化
  • cURL转代码
  • Token计数器
  • 全部工具

© 2026 Scavio. 保留所有权利。

Featured on TAAFT
服务条款隐私政策