Tất cả bài viết

Tổng hợp tin đăng bất động sản ở quy mô lớn

Các cổng thông tin bất động sản sử dụng các giải pháp anti-bot, bố cục và vị trí địa lý khác nhau. Dưới đây là cách tổng hợp tin đăng ở quy mô lớn mà không cần duy trì sáu scraper khác nhau.

Thách thức

Đội ngũ của bạn ra mắt một sản phẩm hiển thị tin đăng. Nó hoạt động ổn định trong ba tuần. Sau đó, Zillow thay đổi DOM của họ, Rightmove thắt chặt các kiểm tra TLS, và scraper của bạn ngừng hoạt động trên bốn trong số sáu nguồn chỉ trong một ngày cuối tuần.

Việc tổng hợp dữ liệu bất động sản có một vấn đề đặc thù mà việc theo dõi giá cả và theo dõi SERP không gặp phải. Bạn không lấy dữ liệu có cấu trúc từ một API sạch sẽ duy nhất. Bạn đang ghép nối các tin đăng từ các cổng thông tin mà mỗi bên lại sử dụng các giải pháp anti-bot, bố cục, vị trí địa lý và tần suất cập nhật khác nhau. Zillow ở Mỹ, Redfin cho dữ liệu được hỗ trợ bởi MLS, Rightmove ở Anh, realestate.com.au ở Úc, Immobilienscout24 ở Đức. Mỗi cổng thông tin là một dự án kỹ thuật riêng biệt.

Theo nghiên cứu năm 2026 của Scrapfly, các cổng thông tin bất động sản hàng đầu kiểm tra TLS fingerprint và từ chối các client không mô phỏng chính xác các handshake cấp trình duyệt. Hướng dẫn về Rightmove của họ giải thích chi tiết về JSON được nhúng trong các biến JavaScript vốn thay đổi cấu trúc vài tháng một lần. Redfin phân mảnh dữ liệu bất động sản trên hàng chục node DOM, vì vậy một tinh chỉnh bố cục nhỏ cũng có thể làm mất một nửa số trường dữ liệu của bạn cùng lúc. Và các cổng thông tin khu vực hiển thị nội dung khác nhau dựa trên quốc gia của người truy cập, nghĩa là một scraper đặt tại Mỹ sẽ không thấy thông tin hữu ích nào trên realestate.com.au.

Kết quả là: độ tươi mới của tin đăng bị giảm sút một cách âm thầm. Một phần ba số bất động sản của bạn bị lỗi thời trong vòng 48 giờ. Người dùng của bạn nhìn thấy mức giá từ tuần trước. Đội ngũ bán hàng bắt đầu nhận phản hồi tiêu cực, và số lượng yêu cầu hỗ trợ tăng vọt vào các ngày Thứ Hai vì bố cục của các cổng thông tin thường có xu hướng thay đổi vào cuối tuần.

Phương pháp tiếp cận

Tổng hợp tin đăng ở quy mô lớn không phải là một bài toán scraping đơn thuần. Đó là một bài toán về độ tin cậy được ngụy trang dưới dạng scraping. Bài viết Tại sao scraper của bạn liên tục bị lỗi đã đề cập đến trường hợp tổng quát. Lĩnh vực bất động sản làm trầm trọng thêm mọi khía cạnh của vấn đề đó.

Bất kỳ nền tảng nào xử lý tốt việc này đều cần bốn yếu tố hoạt động cùng nhau. Thứ nhất, TLS fingerprint khớp với trình duyệt thực tế (không chỉ là chuỗi User-Agent có dạng trình duyệt, mà là thứ tự cipher thực tế và các extension ClientHello mà Zillow và Rightmove sử dụng để phân biệt bot và con người). Thứ hai, IP dân cư chính xác về mặt địa lý tại mọi thị trường mục tiêu, bởi vì một bên tổng hợp dữ liệu ở Đức không thể gửi lưu lượng truy cập từ datacenter Mỹ tới Immobilienscout24 và mong đợi nhận lại phản hồi hữu ích. Thứ ba, định tuyến proxy theo từng host, vì chiến lược hoạt động trên Zillow sẽ thất bại trên realestate.com.au. Thứ tư, render trình duyệt làm phương án dự phòng cho các cổng thông tin đẩy toàn bộ dữ liệu về phía client.

Một request mẫu tới Rightmove thông qua sản phẩm Proxy của FourA trông giống như thế này:

curl -X POST https://api.foura.ai/api/proxy/ \
  -H "x-api-key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "maxTries": 5,
    "timeout_ms": 45000,
    "request": {
      "method": "GET",
      "url": "https://www.rightmove.co.uk/properties/123456",
      "unblocker": true,
      "followRedirects": 5,
      "validate": {
        "status": {"accept": [200]},
        "data": {"fail": ["blocked", "access denied"]}
      }
    }
  }'

Flag unblocker chèn một bộ header trình duyệt đầy đủ cùng với TLS fingerprint phù hợp. maxTries: 5 yêu cầu trình quản lý proxy xoay vòng tối đa năm IP cho đến khi thành công. Các quy tắc xác thực giúp phát hiện các trường hợp chặn âm thầm: các response 200 trả về trang soft-block thay vì dữ liệu tin đăng. Vì vậy, tỷ lệ thành công của bạn phản ánh những gì thực sự hoạt động, chứ không phải những gì trạng thái HTTP khai báo.

Các cổng thông tin phân phối mọi thứ qua JavaScript (Redfin là một ví dụ điển hình) cần render trình duyệt thực tế. Sản phẩm Browser của chúng tôi xử lý những trường hợp đó bằng một instance Chromium thực tế, chứ không phải một trình giả lập gọn nhẹ vốn dễ bị phát hiện ngay từ cái bắt tay đầu tiên. Công nghệ phát hiện bot đã chuyển sang phân tích hành vi vào năm 2026, và bất kỳ thứ gì không phải là một trình duyệt thực tế sẽ ngày càng dễ bị phát hiện.

Kết quả

Điều gì xảy ra khi một bên tổng hợp dữ liệu bất động sản chuyển từ một hệ thống scraping tự dựng sang phương pháp tiếp cận ưu tiên API? Dưới đây là các mô hình chúng tôi ghi nhận được từ các hoạt động thực tế (kịch bản minh họa dựa trên các tiêu chuẩn của ngành):

  • Độ tươi mới của tin đăng cải thiện từ "cập nhật trong vòng 48 giờ" thành "cập nhật trong vòng 2 giờ" đối với các thị trường đang hoạt động
  • Thời gian kỹ thuật dành cho việc bảo trì scraper giảm 70%. Chỉ cần một kỹ sư trực luân phiên thay vì một đội ngũ chuyên trách
  • Phạm vi bao phủ cổng thông tin mở rộng từ 6 trang web lên hơn 20 trang mà không làm tăng cơ sở hạ tầng theo tỷ lệ tương ứng
  • Tỷ lệ chặn âm thầm giảm xuống dưới 3% trên các cổng thông tin được bảo vệ sau khi các quy tắc xác thực phát hiện được soft block

Một mô hình từ các đội ngũ sử dụng nền tảng của chúng tôi: một khi lớp độ tin cậy được chia sẻ, việc thêm một thị trường mới sẽ trở thành một thay đổi về cấu hình thay vì một sprint phát triển. Những câu hỏi thú vị chuyển từ "tại sao cái này lại bị lỗi nữa rồi" thành "chúng ta nên thêm cổng thông tin nào tiếp theo."

Hạn chế thực tế: các cổng thông tin bất động sản yêu cầu phiên đăng nhập (một số hệ thống MLS, một số chế độ xem chỉ dành cho môi giới) cần quản lý tài khoản bên trên hạ tầng request. Đó là một vấn đề riêng biệt mà chúng tôi không giải quyết, và bạn không nên tin bất kỳ ai nói rằng họ làm được điều đó mà không giải thích cách thức hoạt động.

Điểm mấu chốt

Bất động sản là một trong số ít các ngành mà dữ liệu cũ không chỉ là một sự phiền toái. Đó là một sự thất bại của sản phẩm. Một mức giá cũ một tuần trên một trang web thời trang chỉ gây ra một chút bối rối nhẹ. Nhưng một tin đăng cũ một tuần trong một thị trường sôi động đồng nghĩa với việc người dùng của bạn vừa hỏi mua một ngôi nhà đã được bán vào thứ Ba.

Nhưng những đội ngũ chiến thắng trong cuộc chơi này không phải là những bên có nhiều nguồn dữ liệu nhất. Họ là những người đã ngừng việc xây dựng lại cùng một hệ thống proxy và anti-bot cho mỗi cổng thông tin mới. Một khi lớp hạ tầng đó được chia sẻ, công việc thú vị thực sự mới bắt đầu: chất lượng dữ liệu, SLA về độ tươi mới, loại bỏ trùng lặp giữa các cổng thông tin, phân tích xu hướng giá cả. Đó mới là sản phẩm. Mọi thứ bên dưới chỉ cần hoạt động trơn tru.