如何爬取 Kleinanzeigen | 德国最大的分类广告市场

了解如何爬取 Kleinanzeigen,用于价格监控、房地产趋势分析和潜在客户挖掘。从德国顶级网站提取标题和价格。

覆盖率:Germany
可用数据10 字段
标题价格位置描述图片卖家信息联系信息发布日期分类属性
所有可提取字段
列表标题价格价格类型(固定/可议价)地点(城市和地区)邮政编码详细描述图片 URLs类别路径发布日期列表 ID卖家名称卖家类型(私人/商业)卖家评分里程数(适用于车辆)平方米(适用于房地产)
技术要求
需要JavaScript
无需登录
有分页
无官方API
检测到反机器人保护
AkamaiDataDomereCAPTCHARate LimitingIP BlockingTLS Fingerprinting

检测到反机器人保护

Akamai Bot Manager
通过设备指纹、行为分析和机器学习进行高级机器人检测。最复杂的反机器人系统之一。
DataDome
使用ML模型进行实时机器人检测。分析设备指纹、网络信号和行为模式。常见于电商网站。
Google reCAPTCHA
谷歌的验证码系统。v2需要用户交互,v3通过风险评分静默运行。可通过验证码服务解决。
速率限制
限制每个IP/会话在一段时间内的请求数。可通过轮换代理、请求延迟和分布式抓取绕过。
IP封锁
封锁已知的数据中心IP和标记地址。需要住宅或移动代理才能有效绕过。
浏览器指纹
通过浏览器特征识别机器人:canvas、WebGL、字体、插件。需要伪装或真实浏览器配置文件。

关于Kleinanzeigen

了解Kleinanzeigen提供什么以及可以提取哪些有价值的数据。

德国主要的分类广告枢纽

Kleinanzeigen(前身为 eBay Kleinanzeigen)是德国最著名的在线分类广告市场。它每天为数百万活跃用户提供服务,促进从高端房地产和车辆到家用家具和专业本地服务的一切交易。由于其巨大的规模和在德国市场的深厚根基,该平台已成为该国二手经济和本地住房需求的缩影。

为什么爬取 Kleinanzeigen 至关重要

获取 Kleinanzeigen 上的结构化数据对于旨在了解中欧市场波动的企业至关重要。该平台包含在全球零售网站上无法获得的本地化信息,使其成为区域价格基准分析(benchmarking)和趋势分析的金矿。无论您是追踪电子产品的转售价值,还是监测柏林的租金激增,爬取都能提供做出明智决策所需的颗粒度数据。

关于Kleinanzeigen

为什么要抓取Kleinanzeigen?

了解从Kleinanzeigen提取数据的商业价值和用例。

监控德国不同地区的房地产价格和租金趋势以进行投资分析。

针对二手车销售和汽车零部件库存进行竞争对手分析。

为搬家公司和装修团队等服务提供商生成高意向的潜在客户。

追踪消费电子产品的转售价值,以优化折价回购定价策略。

分析餐饮、零售和建筑等行业的本地就业市场趋势。

为二级市场经济行为的学术研究收集历史数据。

抓取挑战

抓取Kleinanzeigen时可能遇到的技术挑战。

激进的反机器人保护(Akamai 和 DataDome)会检测自动化浏览器的指纹特征。

严格的地理阻断政策,需要高质量的德国住宅代理才能访问内容。

动态 CSS 选择器和频繁的页面布局更新会导致传统的静态爬虫失效。

严重的速率限制(rate limiting),即使在请求量中等的情况下也会触发复杂的 CAPTCHA。

对联系信息和卖家详情采用的数据混淆技术。

使用AI抓取Kleinanzeigen

无需编码。通过AI驱动的自动化在几分钟内提取数据。

工作原理

1

描述您的需求

告诉AI您想从Kleinanzeigen提取什么数据。只需用自然语言输入 — 无需编码或选择器。

2

AI提取数据

我们的人工智能浏览Kleinanzeigen,处理动态内容,精确提取您要求的数据。

3

获取您的数据

接收干净、结构化的数据,可导出为CSV、JSON,或直接发送到您的应用和工作流程。

为什么使用AI进行抓取

自动绕过 Akamai 等复杂的反机器人措施,无需编写自定义脚本。
视觉化无代码界面,可在网站选择器更改时快速更新。
基于云端的执行,确保 24/7 数据监控,不占用本地基础架构资源。
集成的代理轮换(proxy rotation)可无缝处理地理限制和 IP 封禁。
自动处理复杂的翻页和深层链接导航,无需任何编码。
无需信用卡提供免费套餐无需设置

AI让您无需编写代码即可轻松抓取Kleinanzeigen。我们的AI驱动平台利用人工智能理解您想要什么数据 — 只需用自然语言描述,AI就会自动提取。

How to scrape with AI:
  1. 描述您的需求: 告诉AI您想从Kleinanzeigen提取什么数据。只需用自然语言输入 — 无需编码或选择器。
  2. AI提取数据: 我们的人工智能浏览Kleinanzeigen,处理动态内容,精确提取您要求的数据。
  3. 获取您的数据: 接收干净、结构化的数据,可导出为CSV、JSON,或直接发送到您的应用和工作流程。
Why use AI for scraping:
  • 自动绕过 Akamai 等复杂的反机器人措施,无需编写自定义脚本。
  • 视觉化无代码界面,可在网站选择器更改时快速更新。
  • 基于云端的执行,确保 24/7 数据监控,不占用本地基础架构资源。
  • 集成的代理轮换(proxy rotation)可无缝处理地理限制和 IP 封禁。
  • 自动处理复杂的翻页和深层链接导航,无需任何编码。

Kleinanzeigen的无代码网页抓取工具

AI驱动抓取的点击式替代方案

Browse.ai、Octoparse、Axiom和ParseHub等多种无代码工具可以帮助您在不编写代码的情况下抓取Kleinanzeigen。这些工具通常使用可视化界面来选择数据,但可能在处理复杂的动态内容或反爬虫措施时遇到困难。

无代码工具的典型工作流程

1
安装浏览器扩展或在平台注册
2
导航到目标网站并打开工具
3
通过点击选择要提取的数据元素
4
为每个数据字段配置CSS选择器
5
设置分页规则以抓取多个页面
6
处理验证码(通常需要手动解决)
7
配置自动运行的计划
8
将数据导出为CSV、JSON或通过API连接

常见挑战

学习曲线

理解选择器和提取逻辑需要时间

选择器失效

网站更改可能会破坏整个工作流程

动态内容问题

JavaScript密集型网站需要复杂的解决方案

验证码限制

大多数工具需要手动处理验证码

IP封锁

过于频繁的抓取可能导致IP被封

Kleinanzeigen的无代码网页抓取工具

Browse.ai、Octoparse、Axiom和ParseHub等多种无代码工具可以帮助您在不编写代码的情况下抓取Kleinanzeigen。这些工具通常使用可视化界面来选择数据,但可能在处理复杂的动态内容或反爬虫措施时遇到困难。

无代码工具的典型工作流程
  1. 安装浏览器扩展或在平台注册
  2. 导航到目标网站并打开工具
  3. 通过点击选择要提取的数据元素
  4. 为每个数据字段配置CSS选择器
  5. 设置分页规则以抓取多个页面
  6. 处理验证码(通常需要手动解决)
  7. 配置自动运行的计划
  8. 将数据导出为CSV、JSON或通过API连接
常见挑战
  • 学习曲线: 理解选择器和提取逻辑需要时间
  • 选择器失效: 网站更改可能会破坏整个工作流程
  • 动态内容问题: JavaScript密集型网站需要复杂的解决方案
  • 验证码限制: 大多数工具需要手动处理验证码
  • IP封锁: 过于频繁的抓取可能导致IP被封

代码示例

import requests
from bs4 import BeautifulSoup

# 注意:该网站使用 Akamai/DataDome。简单的 requests 可能会返回 403 Forbidden。
url = 'https://www.kleinanzeigen.de/s-berlin/c0-l3331'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/119.0.0.0 Safari/537.36',
    'Accept-Language': 'de-DE,de;q=0.9'
}

try:
    response = requests.get(url, headers=headers, timeout=10)
    response.raise_for_status()
    soup = BeautifulSoup(response.text, 'html.parser')
    
    for item in soup.select('article.aditem'):
        title = item.select_one('.aditem-main--title-line a').text.strip()
        price = item.select_one('.aditem-main--middle--price-shipping--price').text.strip()
        print(f'Ad: {title} | Price: {price}')
except Exception as e:
    print(f'爬取失败: {e}')

使用场景

最适合JavaScript较少的静态HTML页面。非常适合博客、新闻网站和简单的电商产品页面。

优势

  • 执行速度最快(无浏览器开销)
  • 资源消耗最低
  • 易于使用asyncio并行化
  • 非常适合API和静态页面

局限性

  • 无法执行JavaScript
  • 在SPA和动态内容上会失败
  • 可能难以应对复杂的反爬虫系统

如何用代码抓取Kleinanzeigen

Python + Requests
import requests
from bs4 import BeautifulSoup

# 注意:该网站使用 Akamai/DataDome。简单的 requests 可能会返回 403 Forbidden。
url = 'https://www.kleinanzeigen.de/s-berlin/c0-l3331'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/119.0.0.0 Safari/537.36',
    'Accept-Language': 'de-DE,de;q=0.9'
}

try:
    response = requests.get(url, headers=headers, timeout=10)
    response.raise_for_status()
    soup = BeautifulSoup(response.text, 'html.parser')
    
    for item in soup.select('article.aditem'):
        title = item.select_one('.aditem-main--title-line a').text.strip()
        price = item.select_one('.aditem-main--middle--price-shipping--price').text.strip()
        print(f'Ad: {title} | Price: {price}')
except Exception as e:
    print(f'爬取失败: {e}')
Python + Playwright
from playwright.sync_api import sync_playwright

def run():
    with sync_playwright() as p:
        browser = p.chromium.launch(headless=True)
        context = browser.new_context(user_agent='Mozilla/5.0', locale='de-DE')
        page = context.new_page()
        
        # 导航至列表页面
        page.goto('https://www.kleinanzeigen.de/s-anzeige/beispiel', wait_until='networkidle')
        
        # 提取详情
        title = page.locator('h1#viewad-title').inner_text()
        price = page.locator('#viewad-price').inner_text()
        
        print({'title': title.strip(), 'price': price.strip()})
        browser.close()

run()
Python + Scrapy
import scrapy

class KleinanzeigenSpider(scrapy.Spider):
    name = 'kleinanzeigen'
    start_urls = ['https://www.kleinanzeigen.de/s-berlin/c0-l3331']
    
    def parse(self, response):
        for ad in response.css('article.aditem'):
            yield {
                'title': ad.css('.aditem-main--title-line a::text').get(),
                'price': ad.css('.aditem-main--middle--price-shipping--price::text').get(),
                'location': ad.css('.aditem-main--top--left::text').get()
            }
        
        # 翻页处理
        next_page = response.css('a.pagination-next::attr(href)').get()
        if next_page:
            yield response.follow(next_page, self.parse)
Node.js + Puppeteer
const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  // 设置语言以匹配本地用户
  await page.setExtraHTTPHeaders({'Accept-Language': 'de-DE'});

  await page.goto('https://www.kleinanzeigen.de/s-berlin/c0-l3331');
  const ads = await page.evaluate(() => {
    return Array.from(document.querySelectorAll('.aditem')).map(el => ({
      title: el.querySelector('.aditem-main--title-line a')?.innerText,
      price: el.querySelector('.aditem-main--middle--price-shipping--price')?.innerText
    }));
  });

  console.log(ads);
  await browser.close();
})();

您可以用Kleinanzeigen数据做什么

探索Kleinanzeigen数据的实际应用和洞察。

房地产市场指数编制

房地产投资者可以追踪租金和销售价格,以识别被低估的社区。

如何实现:

  1. 1每天爬取 'Immobilien'(房地产)类别。
  2. 2提取邮政编码和每平方米价格。
  3. 3将数据汇总成周价格指数。
  4. 4将趋势与政府官方住房报告进行对比。

使用Automatio从Kleinanzeigen提取数据,无需编写代码即可构建这些应用。

您可以用Kleinanzeigen数据做什么

  • 房地产市场指数编制

    房地产投资者可以追踪租金和销售价格,以识别被低估的社区。

    1. 每天爬取 'Immobilien'(房地产)类别。
    2. 提取邮政编码和每平方米价格。
    3. 将数据汇总成周价格指数。
    4. 将趋势与政府官方住房报告进行对比。
  • 汽车库存监控

    二手车经销商可以实时监控竞争对手的定价和库存周转情况。

    1. 针对 'Auto'(汽车)板块中的特定汽车品牌和型号进行爬取。
    2. 提取里程数、注册年份和价格。
    3. 识别长期活跃的列表以发现定价过高的情况。
    4. 针对低于市场价值的新发布交易自动触发预警。
  • 服务类潜在客户挖掘

    搬家和清洁公司可以在客户正需要服务时精准找到他们。

    1. 监控 'Möbel & Wohnen'(家具与生活)类别中暗示搬家的家具销售。
    2. 提取卖家的所在区和城市。
    3. 根据 'Umzug'(搬家)等关键词过滤列表。
    4. 为销售团队提供潜在客户(leads),以便进行本地推广。
  • 消费电子产品价格追踪

    零售商可以通过监控二手技术的当前市场价值来调整其折价贴现(trade-in)报价。

    1. 爬取 'Handy & Telecom' 或 'Konsole' 等类别。
    2. 清洗价格字符串,去除 'VB'(可议价)或 'Günstig'(便宜)标记。
    3. 计算特定型号(如 iPhone 或 PlayStation)的平均转售价值。
    4. 根据结果动态更新电子商务的回购价格。
  • 区域需求分析

    市场研究人员可以识别德国特定联邦州对哪些类型的商品有高需求。

    1. 爬取德国不同城市(如慕尼黑 vs 柏林)的列表数量。
    2. 比较不同类别的成交量随时间的变化。
    3. 识别 'Garten'(园艺)或 'Wintersport'(冬季运动)等类别的季节性高峰。
    4. 为计划区域库存分配的企业生成报告。
不仅仅是提示词

用以下方式提升您的工作流程 AI自动化

Automatio结合AI代理、网页自动化和智能集成的力量,帮助您在更短的时间内完成更多工作。

AI代理
网页自动化
智能工作流

抓取Kleinanzeigen的专业技巧

成功从Kleinanzeigen提取数据的专家建议。

始终使用德国住宅代理,以防止由国外流量触发的立即 IP 封禁。

将浏览器语言设置为 'de-DE',以确保网站正确渲染并避免机器人怀疑。

在爬取过程中实施 10 到 30 秒之间的随机休眠定时器,以模拟自然的人类浏览行为。

在流量较低的夜间(CET)进行爬取,以减轻速率限制(rate limiting)的强度。

使用带有 stealth 插件的无头浏览器,以绕过 Akamai 使用的 TLS fingerprinting 检测。

除非必要,否则避免爬取登录后的页面,因为基于账户的爬取极易受到封禁。

相关 Web Scraping

关于Kleinanzeigen的常见问题

查找关于Kleinanzeigen的常见问题答案