Batdongsan Scraper
Scrape Listings and Prices from Batdongsan.com.vn
Extract property listings, asking prices, and area data from Vietnam's largest real estate portal. Batdongsan.com.vn runs behind Cloudflare with bot verification and requires JavaScript rendering. Scrape.do handles both automatically.
Start scraping today with 1000 free credits. No Credit Card Required

4.3M Monthly Visits. Every Province. One API.
Batdongsan.com.vn is the #1 real estate portal in Vietnam, drawing over 4 million monthly visits and listing property for sale and rent across apartments, houses, land, and commercial space in every province. Acquired by Singapore's PropertyGuru Group in 2018, it is the primary source for Vietnamese property pricing, with asking prices in dong and price-per-square-meter shown on every listing.
With Scrape.do you can track asking prices and price-per-m² trends by district and city, monitor new-project and development listings, capture rental rates and listing volume, and feed valuation models and market analytics. All through a single API call.

Cloudflare. JS Rendering. Handled.
Batdongsan.com.vn sits behind Cloudflare, which serves a "Performing security verification" page with a "Verify you are human" challenge to any request that is not a real browser, including Python requests, cURL, and datacenter proxies. Listing and search pages are also a JavaScript-rendered single-page app, so a raw HTML fetch returns an empty shell even after the challenge.
Scrape.do rotates high-quality residential IPs with full browser fingerprints, clears the Cloudflare challenge, and renders the page's JavaScript so you receive fully populated listing and search HTML. You get clean pricing and area data without maintaining proxy pools or headless browsers.

How to Scrape Batdongsan.com.vn
Select a Target

Send API Request
import requests
import urllib.parse
token = "<SDO-token>"
targetUrl = "https://batdongsan.com.vn/cho-thue-can-ho-chung-cu-phuong-binh-trung-tay-diamond-island/2br-apartment-for-rent-at-high-floor-full-furnished-only-unit-available-in-bahamas-pr45544089"
render = "true" # set to "false" to disable JavaScript rendering
super = "false" # set to "true" to enable residential proxies
geoCode = "vn"
encodedUrl = urllib.parse.quote(targetUrl)
url = f"https://api.scrape.do/?token={token}&url={encodedUrl}&render={render}&super={super}&geoCode={geoCode}"
response = requests.get(url)
print(response.text)Get HTML
<!DOCTYPE html>
<html lang="vi">
<head>
<meta charset="utf-8">
<title>2BR Apartment for Rent at Diamond Island - Batdongsan.com.vn</title>
</head>
<body>
<h1 class="re__pr-title">2BR Apartment for Rent at Diamond Island High Floor Full Furnished</h1>
<div class="re__pr-short-info">
<div class="value"><span>Mức giá</span><span class="price">26 triệu/tháng</span></div>
<div class="value"><span>Diện tích</span><span class="area">90 m²</span></div>
<div class="value"><span>Phòng ngủ</span><span class="bedroom">2 PN</span></div>
</div>
<div class="re__pr-map">
<span class="address">Diamond Island, Phường Bình Trưng Tây, Quận 2, Hồ Chí Minh</span>
</div>
<div class="re__pr-gallery">
<img src="https://file4.batdongsan.com.vn/.../image1.jpg">
<img src="https://file4.batdongsan.com.vn/.../image2.jpg">
</div>
<div class="re__contact">
<span class="name">Phương Thảo</span>
<span class="phone">0902 321 ***</span>
</div>
<!-- ... remaining page content ... -->
</body>
</html>
Scrape.do has been a game-changer with powerful scraping tools, but what truly sets them apart is their excellent customer support.

CTO
Average Response Time
No tickets connect with expert engineers.
Success rate
Proxies
Faster gateway than the closest competitor.
Reliable, Scalable,Unstoppable Web Scraping
Sounds great, but I have a few questions..
Yes. batdongsan.com.vn shows a Cloudflare "Performing security verification" page with a "Verify you are human" challenge to any request that is not a real browser, including Python requests, cURL, and datacenter proxies. Scrape.do rotates real residential IPs with full browser fingerprints, clears the Cloudflare challenge, and renders the JavaScript so you get fully populated listing and search HTML. Success rates exceed 95% on listing and search pages.
You can extract property titles, asking prices (in dong), price-per-square-meter, area, number of bedrooms and bathrooms, location down to district and ward, listing photos, project details, and agent contact information across for-sale and for-rent listings nationwide.
Yes. Batdongsan.com.vn listing and search pages are rendered client-side, so a plain HTML request returns an empty shell. Use Scrape.do with render=true to execute the page JavaScript in a real browser and capture the fully populated listing content, and set geoCode=vn to get Vietnam-local results.


