Thách thức
Nhóm của bạn ra mắt một sản phẩm danh sách. Nó hoạt động trong ba tuần. Sau đó, Zillow thay đổi DOM của họ, Rightmove thắt chặt kiểm tra bot 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.
Tổng hợp bất động sản có một vấn đề đặc thù mà việc theo dõi giá và theo dõi SERP không gặp phải. Bạn không trích xuất dữ liệu có cấu trúc từ một API sạch duy nhất. Bạn đang ghép nối các danh sách từ các cổng thông tin, trong đó mỗi cổng sử dụng các anti-bot stack khác nhau, layout khác nhau, vị trí địa lý khác nhau và nhịp độ cập nhật khác nhau. Zillow ở Mỹ, Redfin cho dữ liệu từ 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 chữ ký ở cấp độ kết nối và từ chối các client không khớp với handshake tiêu chuẩn của trình duyệt. Hướng dẫn Rightmove của họ trình bày chi tiết về JSON được nhúng trong các biến JavaScript 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 qua hàng tá node DOM, vì vậy một tinh chỉnh layout duy nhất có thể làm rớ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 phục vụ nội dung khác nhau dựa trên quốc gia của khách truy cập, điều này có nghĩa là một scraper đặt tại Mỹ sẽ không thấy gì hữu ích trên realestate.com.au.
Kết quả: độ mới của danh sách bị giảm sút trong im lặng. Một phần ba số bất động sản của bạn trở nên cũ kỹ trong vòng 48 giờ. Người dùng của bạn nhìn thấy giá từ tuần trước. Đội ngũ bán hàng của bạn bắt đầu nhận phản hồi tiêu cực, và các ticket hỗ trợ tăng đột biến vào thứ Hai vì layout của cổng thông tin thường thay đổi vào cuối tuần.
Cách tiếp cận
Tổng hợp danh sách ở quy mô lớn không phải là bài toán scraping. Đó là bài toán độ tin cậy được ngụy trang dưới dạng scraping. Bài viết Lý do scraper của bạn liên tục hỏng đề cập đến trường hợp tổng quát. Bất động sản khuếch đại mọi khía cạnh của bài toán đó.
Bất kỳ nền tảng nào xử lý tốt điều này đều cần bốn yếu tố hoạt động cùng nhau. Thứ nhất, chữ ký request khớp với trình duyệt thực (không chỉ là chuỗi User-Agent giống trình duyệt, mà là các chi tiết cấp độ mạng thực tế mà Zillow và Rightmove sử dụng để phân biệt bot với con người). Thứ hai, IP dân cư chính xác theo khu vực địa lý ở mọi thị trường mục tiêu, vì một công cụ tổng hợp của Đức không thể gửi lưu lượng datacenter của Mỹ đến Immobilienscout24 và mong đợi các response hữu ích. Thứ ba, định tuyến proxy theo host, vì chiến lược hiệu quả trên Zillow sẽ thất bại trên realestate.com.au. Thứ tư, render bằng trình duyệt như một phương án dự phòng cho các cổng thông tin đẩy mọi thứ sang phía client.
Một request mẫu gửi tới Rightmove thông qua sản phẩm proxy của FourA sẽ trô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"]}
}
}
}'
Cờ unblocker chèn một bộ header trình duyệt đầy đủ cùng với chữ ký cấp độ mạng tương ứng. maxTries: 5 báo cho trình quản lý proxy xoay vòng lên đến năm IP cho đến khi có một IP thành công. Các quy tắc xác thực bắt được những trường hợp chặn ngầm: các response 200 trả về một trang chặn mềm thay vì dữ liệu danh sách. Nhờ 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 tuyên bố.
Các cổng thông tin phục vụ mọi thứ thông qua JavaScript (Redfin là ví dụ rõ ràng nhất) cần render bằng trình duyệt thực. Sản phẩm Browser của chúng tôi xử lý những trường hợp đó bằng một instance trình duyệt đầy đủ, chứ không phải một trình giả lập nhẹ bị đánh cờ ngay trong kết nối đầu tiên. Phát hiện bot đã chuyển sang dựa trên hành vi vào năm 2026, và bất cứ thứ gì kém hơn một trình duyệt thực đều ngày càng dễ bị phát hiện.
Kết quả
Điều gì xảy ra khi một công cụ tổng hợp bất động sản chuyển từ stack scraping tùy chỉnh sang cách tiếp cận ưu tiên API? Các mô hình chúng tôi thấy trong hoạt động thực tế (kịch bản minh họa dựa trên các chuẩn mực ngành):
- Độ mới của danh sách cải thiện từ "cập nhật trong 48 giờ" xuống "cập nhật trong 2 giờ" đối với các thị trường sôi động
- Thời gian kỹ thuật dành cho việc bảo trì scraper giảm 70%. Một kỹ sư trực luân phiên thay vì một đội ngũ chuyên trách
- Phạm vi cổng thông tin mở rộng từ 6 trang lên 20+ trang mà không cần tăng hạ tầng tương ứng
- Tỷ lệ chặn ngầm giảm xuống dưới 3% trên các cổng thông tin được bảo vệ một khi các quy tắc xác thực bắt được các trường hợp chặn mềm
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 trở thành thay đổi cấu hình thay vì một sprint. Những câu hỏi thú vị chuyển từ "tại sao cái này lại hỏng nữa" sang "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 đại lý) cần quản lý tài khoản trên nền tảng hạ tầng request. Đó là một bài toán riêng biệt mà chúng tôi không giải quyết, và bạn không nên tin tưởng bất kỳ ai nói rằng họ làm được mà không giải thích cách thức.
Điểm chính yếu
Bất động sản là một trong số ít ngành mà dữ liệu cũ không chỉ là sự phiền toái. Đó là một thất bại của sản phẩm. Một mức giá cũ kỹ một tuần trên một trang web thời trang chỉ là sự bối rối nhẹ. Một danh sách cũ một tuần trong một thị trường đang sốt có nghĩa là người dùng của bạn vừa hỏi mua một căn nhà đã được bán vào thứ Ba.
Nhưng các đội ngũ chiến thắng trong lĩnh vực này không phải là những đội ngũ 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 đó được chia sẻ, công việc thú vị mới bắt đầu: chất lượng dữ liệu, SLA về độ mới, chống trùng lặp chéo giữa các cổng, phân tích xu hướng giá. Đó chính là sản phẩm. Mọi thứ bên dưới chỉ cần hoạt động trơn tru là đủ.