← Quay lại blog

Cách thu thập giá taxi và giao hàng theo khu vực thành phố qua proxy: hướng dẫn cho các nhà phân tích

Phân tích cách doanh nghiệp xây dựng hệ thống giám sát giá taxi và giao hàng theo khu vực thành phố - từ việc chọn nguồn dữ liệu đến cấu hình proxy cho việc thu thập dữ liệu theo vị trí địa lý.

📅31 tháng 10, 2026

Giá taxi và giao hàng trong cùng một thành phố có thể khác nhau từ hai đến ba lần tùy thuộc vào khu vực, thời gian trong ngày và mức độ tắc nghẽn giao thông. Đối với các công ty logistics, các nhà cung cấp dịch vụ và các nhà bán lẻ, đây là dữ liệu cực kỳ quan trọng — chúng là cơ sở để xây dựng mô hình định giá, dự đoán nhu cầu và quyết định về việc triển khai dịch vụ tại các địa điểm mới. Tuy nhiên, việc thu thập những dữ liệu này không hề đơn giản: các dịch vụ taxi và giao hàng gắn chặt giá cả với vị trí địa lý của người dùng và tích cực chặn việc thu thập thông tin tự động.

Tại sao doanh nghiệp cần giám sát giá theo khu vực

Giá taxi và giao hàng trong các ứng dụng được hình thành một cách động: thuật toán xem xét nhu cầu ở khu vực cụ thể, thời gian trong ngày, thời tiết, mức độ tắc nghẽn của tài xế và nhân viên giao hàng. Cùng một lộ trình ở trung tâm thành phố và ở ngoại ô có thể có giá khác nhau ngay cả với cùng một dịch vụ. Điều này mở ra một số nhiệm vụ thực tiễn cho doanh nghiệp.

Các công ty logistics sử dụng dữ liệu về giá cả của đối thủ để điều chỉnh mức giá của chính họ theo thời gian thực. Nếu đối thủ giảm giá giao hàng ở một khu vực cụ thể, việc phản ứng hợp lý trước khi khách hàng bắt đầu chuyển sang họ là điều cần thiết. Các nhà cung cấp dịch vụ taxi và chia sẻ xe phân tích sự biến động giá cả theo khu vực để xác định các khu vực có nhu cầu cao và phân bổ lại tài xế. Các nhà bán lẻ và dịch vụ giao đồ ăn (tương tự như Yandex.Eda và SberMarket) theo dõi giá giao hàng của đối thủ để thiết lập đúng các khu vực giao hàng miễn phí và số tiền tối thiểu của đơn hàng.

Một nhóm người dùng riêng biệt là các nhà phân tích di động đô thị và các công ty nghiên cứu, những người xây dựng bản đồ "bất bình đẳng giá" giữa các khu vực. Những dữ liệu này giúp các nhà phát triển đánh giá khả năng tiếp cận giao thông của các dự án xây dựng mới, trong khi các cơ quan chính quyền địa phương xác định các khu vực thiếu dịch vụ giao thông. Nếu không có việc thu thập dữ liệu có hệ thống theo khu vực, không một nhiệm vụ nào trong số này có thể được giải quyết — việc kiểm tra giá một lần bằng tay sẽ cho ra một bức tranh sai lệch, vì giá cả thay đổi từng phút.

Tại sao các dịch vụ chặn việc thu thập dữ liệu theo vị trí địa lý

Các dịch vụ taxi và giao hàng bảo vệ dữ liệu giá cả của họ vì một số lý do. Đầu tiên, định giá động là một bí mật thương mại và lợi thế cạnh tranh, dễ dàng bị sao chép nếu biết được mức giá hiện tại ở tất cả các khu vực. Thứ hai, các yêu cầu hàng loạt từ một địa chỉ IP tạo ra tải cho các máy chủ và làm sai lệch thống kê về nhu cầu thực tế, vì vậy các hệ thống chống gian lận tích cực chặn các yêu cầu như vậy.

Về mặt kỹ thuật, việc bảo vệ được xây dựng trên nhiều cấp độ. Các ứng dụng xác định vị trí địa lý không chỉ bằng GPS mà còn bằng địa chỉ IP — nếu một yêu cầu từ địa chỉ IP ở Moscow đến với tọa độ của Novosibirsk, hệ thống sẽ đánh dấu nó là nghi ngờ. Ngoài ra, còn có giới hạn yêu cầu từ một IP trong một khoảng thời gian nhất định: việc vượt quá ngưỡng sẽ dẫn đến việc bị chặn tạm thời hoặc cung cấp giá cả sai lệch. Cấp độ thứ ba là việc nhận diện thiết bị và trình duyệt, phân biệt người dùng thực với script dựa trên nhiều tham số: độ phân giải màn hình, danh sách phông chữ, hành vi của con trỏ.

Chính vì vậy, một script đơn giản với một địa chỉ IP nhanh chóng bị chặn hoặc nhận dữ liệu sai lệch. Để thu thập giá ổn định cho hàng chục khu vực của một thành phố, và đặc biệt là cho nhiều thành phố, cần một cơ sở hạ tầng mô phỏng các yêu cầu của người dùng thực từ nhiều điểm khác nhau — và ở đây không thể thiếu proxy gắn với vị trí địa lý cần thiết.

Dữ liệu nào cần thu thập và từ nền tảng nào

Trước khi thiết lập việc thu thập dữ liệu, điều quan trọng là xác định các chỉ số nào cần thiết cho phân tích. Đối với taxi, thường là: giá cơ bản cho chuyến đi theo lộ trình tiêu chuẩn, hệ số nhu cầu tăng cao, thời gian chờ xe và sự sẵn có của các loại hình dịch vụ kinh tế/thoải mái/doanh nhân ở khu vực cụ thể. Đối với giao hàng — giá giao hàng cho đơn hàng có số tiền nhất định, số tiền tối thiểu cho giao hàng miễn phí, thời gian chờ đợi của nhân viên giao hàng và sự tồn tại của khu vực phục vụ.

Các nguồn dữ liệu chính ở Nga và các nước CIS là các ứng dụng và trang web của các nhà cung cấp dịch vụ taxi lớn, dịch vụ giao đồ ăn và thực phẩm, cũng như các chợ trực tuyến có logistics riêng. Nếu nhiệm vụ là phân tích so sánh, nên thu thập dữ liệu đồng thời từ nhiều dịch vụ cạnh tranh ở cùng một khu vực và khoảng thời gian, nếu không thì việc so sánh sẽ không chính xác: giá của các dịch vụ khác nhau dao động không đồng bộ.

Điều quan trọng là phải ghi lại danh sách các điểm kiểm soát — các địa chỉ hoặc tọa độ cụ thể trong mỗi khu vực mà sẽ được xây dựng lộ trình. Nếu không có các điểm cố định, dữ liệu không thể so sánh với nhau: việc so sánh giá chuyến đi từ trung tâm đến khu vực ngủ với giá chuyến đi trong cùng một khu vực là vô nghĩa cho việc phân tích sự biến động theo thời gian.

Phương pháp thu thập: thủ công, tự động hóa, API

Có ba phương pháp chính để thu thập dữ liệu về giá cả. Giám sát thủ công — nhân viên mở ứng dụng, thay đổi điểm khởi hành và ghi lại giá. Đây là một phương án khả thi cho một nghiên cứu đơn lẻ, nhưng hoàn toàn không phù hợp cho phân tích định kỳ: giá thay đổi từng phút, và việc kiểm tra bằng tay 20 khu vực qua ba dịch vụ sẽ mất hàng giờ.

Phương pháp thứ hai — tự động hóa thông qua các script trình duyệt hoặc trình duyệt headless, mô phỏng hành động của người dùng: mở trang web, nhập địa chỉ, đọc giá từ màn hình. Phương pháp này có thể mở rộng tốt hơn, nhưng yêu cầu phải vượt qua các biện pháp bảo vệ chống bot và liên tục điều chỉnh theo sự thay đổi của giao diện trang web.

Phương pháp thứ ba — làm việc thông qua các API nội bộ của các ứng dụng di động, thường dễ sử dụng hơn giao diện web, nhưng yêu cầu mô phỏng chính xác các tiêu đề yêu cầu và thường gắn với việc xác thực. Bất kể phương pháp nào được chọn, để có được giá thực tế cho một khu vực cụ thể, các yêu cầu phải đến từ địa chỉ IP, được đặt vật lý trong thành phố đó, và lý tưởng nhất là trong khu vực tương ứng hoặc ít nhất là trong khu vực hành chính.

Vai trò của proxy trong việc thu thập dữ liệu theo địa lý

Proxy trong nhiệm vụ giám sát giá theo khu vực không giải quyết vấn đề ẩn danh, mà là vấn đề độ tin cậy của dữ liệu. Các dịch vụ taxi và giao hàng hiển thị các mức giá khác nhau tùy thuộc vào việc yêu cầu đến từ đâu. Nếu thu thập giá cho St. Petersburg từ một địa chỉ IP ở Moscow, hệ thống sẽ hoặc đưa ra lỗi vị trí địa lý, hoặc hiển thị các mức giá không chính xác, không phù hợp với thị trường thực tế ở thành phố cần thiết.

Đối với nhiệm vụ này, proxy dân cư là lựa chọn tốt nhất — chúng sử dụng các địa chỉ IP thực tế của các nhà cung cấp dịch vụ gia đình và cho phép chọn thành phố hoặc khu vực cụ thể, điều này rất quan trọng khi so sánh hàng chục khu vực. Khác với các địa chỉ máy chủ, IP dân cư không bị đưa vào danh sách đen của các hệ thống chống gian lận của các dịch vụ taxi, vì chúng trông giống như người dùng thông thường từ các mạng di động hoặc gia đình.

Đối với việc giám sát các ứng dụng di động (không phải phiên bản web), proxy di động trở thành một lựa chọn tốt — chúng sử dụng IP của các nhà mạng di động, thường được coi là đáng tin cậy hơn trong các hệ thống chống bot, vì chúng thường ẩn chứa hàng ngàn người dùng thực (NAT), và việc chặn một địa chỉ như vậy ảnh hưởng đến nhiều người dùng thông thường, điều mà các dịch vụ muốn tránh.

Proxy từ trung tâm dữ liệu cũng có thể áp dụng — ví dụ, để thu thập dữ liệu từ các trang web công cộng mà không cần gắn chặt vào vị trí địa lý, nơi tốc độ quan trọng hơn là sự phù hợp chính xác với mạng thành phố. Nhưng đối với giá taxi và giao hàng, nơi mà việc gắn địa lý xác định kết quả yêu cầu trực tiếp, các giải pháp dân cư và di động cung cấp dữ liệu ổn định và thực tế hơn nhiều.

Chọn loại proxy nào: so sánh

Để xác định lựa chọn, có thể so sánh các loại proxy theo các thông số chính, quan trọng cho việc giám sát giá theo khu vực.

Loại proxy Độ chính xác của gắn địa lý Rủi ro bị chặn Phù hợp cho
Proxy dân cư Cao, đến mức thành phố/khu vực Thấp Các trang web và ứng dụng taxi, giao hàng, phân tích chi tiết theo khu vực
Proxy di động Cao, gắn với nhà mạng và khu vực Rất thấp Giám sát qua các ứng dụng di động taxi và giao hàng
Proxy từ trung tâm dữ liệu Thấp, không có gắn địa lý chính xác Cao hơn mức trung bình Thu thập dữ liệu chung, nơi gắn địa lý không quan trọng

Trong thực tế, nhiều đội phân tích kết hợp các phương pháp: sử dụng proxy dân cư để thu thập giá ban đầu trên trang web và proxy di động để kiểm tra dữ liệu từ ứng dụng, vì giá ở đó đôi khi khác với phiên bản web.

Hướng dẫn từng bước để thiết lập thu thập dữ liệu

Nếu công ty không có lập trình viên chính thức, có thể thiết lập việc giám sát định kỳ thông qua sự kết hợp giữa trình duyệt chống phát hiện và proxy, mà không cần viết mã. Cách tiếp cận như sau: mở trình duyệt chống phát hiện (Dolphin Anty, AdsPower, Multilogin hoặc Octo Browser), tạo một hồ sơ riêng cho mỗi thành phố hoặc khu vực cần giám sát.

Trong cài đặt hồ sơ, chỉ định proxy gắn với khu vực cần thiết: chèn địa chỉ IP, cổng, tên đăng nhập và mật khẩu, chọn loại SOCKS5 hoặc HTTP tùy thuộc vào những gì nhà cung cấp proxy hỗ trợ. Sau đó, hồ sơ sẽ trông giống như người dùng vật lý đang ở trong thành phố đã chọn — trình duyệt sẽ mở trang web taxi hoặc giao hàng với giá "địa phương".

Tiếp theo, bạn có thể vào trang web, nhập các điểm kiểm soát của lộ trình và ghi lại giá, hoặc chụp màn hình trang để xử lý sau. Đối với nhiều khu vực, nên giữ các hồ sơ trình duyệt riêng biệt gắn với các IP khác nhau, chuyển đổi giữa chúng theo lịch trình.

Đối với việc giám sát quy mô lớn hơn — khi cần theo dõi hàng chục khu vực ở nhiều thành phố vài lần trong ngày — chế độ thủ công không còn hiệu quả và nên chuyển sang thu thập tự động thông qua các script, mà sẽ được đề cập dưới đây.

Ví dụ về mã cho việc thu thập tự động

Đối với những ai có lập trình viên hoặc nhà phân tích trong đội ngũ, việc thu thập tự động giá có thể được xây dựng trên Python với việc sử dụng thư viện requests và xoay vòng proxy theo khu vực. Dưới đây là một ví dụ đơn giản về logic truy vấn API của dịch vụ giao hàng với việc chèn tọa độ khu vực và proxy hóa yêu cầu qua khu vực cần thiết.

import requests
import time

# Danh sách các điểm kiểm soát theo khu vực thành phố
districts = [
    {"name": "Trung tâm", "lat": 55.7558, "lon": 37.6173},
    {"name": "Khu vực ngủ A", "lat": 55.8300, "lon": 37.4500},
    {"name": "Khu vực ngủ B", "lat": 55.6200, "lon": 37.7100},
]

# Proxy gắn với khu vực cần thiết
proxies = {
    "http": "http://login:password@proxy-host:port",
    "https": "http://login:password@proxy-host:port",
}

def get_delivery_price(lat, lon):
    url = "https://example-delivery-service.com/api/price"
    params = {"lat": lat, "lon": lon}
    headers = {"User-Agent": "Mozilla/5.0"}
    response = requests.get(url, params=params, headers=headers, proxies=proxies, timeout=10)
    return response.json().get("price")

results = []
for district in districts:
    price = get_delivery_price(district["lat"], district["lon"])
    results.append({"district": district["name"], "price": price, "timestamp": time.time()})
    time.sleep(5)  # tạm dừng giữa các yêu cầu để không vượt quá giới hạn

print(results)

Trong nhiệm vụ thực tế, proxy cần được xoay vòng ở mức độ nhóm — để các khu vực khác nhau được truy vấn từ các IP khác nhau, và các yêu cầu đến cùng một điểm cuối không được gửi quá thường xuyên từ một địa chỉ. Điều này giảm thiểu rủi ro bị chặn và làm cho việc thu thập dữ liệu ổn định hơn theo thời gian.

Tần suất cập nhật và lưu trữ dữ liệu

Giá taxi và giao hàng thay đổi trong suốt cả ngày, vì vậy một lần chụp dữ liệu sẽ không cung cấp nhiều thông tin cho nhà phân tích. Tần suất tối ưu của việc truy vấn phụ thuộc vào nhiệm vụ: để phân tích giờ cao điểm, chỉ cần truy vấn giá mỗi 15–30 phút trong giờ cao điểm và một lần mỗi một đến hai giờ trong thời gian còn lại. Để xây dựng bản đồ "giá cơ bản" theo khu vực, một hoặc hai lần đo trong ngày vào cùng một thời điểm là đủ để loại trừ ảnh hưởng của nhu cầu.

Lưu trữ dữ liệu thu thập được dễ dàng nhất trong dạng có cấu trúc — bảng với các trường "ngày và giờ", "khu vực", "dịch vụ", "giá", "hệ số nhu cầu". Định dạng này dễ dàng tải lên Google Sheets cho các khối lượng nhỏ hoặc vào cơ sở dữ liệu để xây dựng các bảng điều khiển đầy đủ trong các công cụ BI. Quan trọng là phải lưu trữ dữ liệu lịch sử, không ghi đè lên chúng — chính sự biến động theo thời gian mang lại giá trị phân tích lớn nhất, không phải các lần đo điểm.

Đối với khối lượng thu thập lớn (nhiều thành phố, hàng chục khu vực, nhiều dịch vụ), nên suy nghĩ trước về cách lưu trữ và tổng hợp dữ liệu theo giờ và ngày trong tuần — điều này sẽ cho phép xây dựng các mô hình dự đoán về nhu cầu và định giá trong tương lai, thay vì chỉ là một kho dữ liệu rời rạc.

Những sai lầm phổ biến khi giám sát giá

Sai lầm đầu tiên và thường gặp nhất là sử dụng cùng một địa chỉ IP để truy vấn tất cả các khu vực của thành phố. Điều này không chỉ làm tăng rủi ro bị chặn mà còn có thể dẫn đến việc dịch vụ cung cấp giá trung bình hoặc giá đã được lưu vào bộ nhớ thay vì giá trị thực tế cho vị trí cụ thể.

Sai lầm thứ hai là gửi yêu cầu quá thường xuyên mà không có khoảng dừng, điều này nhanh chóng dẫn đến việc tài khoản hoặc IP bị chặn tạm thời. Các hệ thống chống gian lận của dịch vụ taxi theo dõi không chỉ số lượng yêu cầu mà còn cả mẫu hành vi: người dùng thực không kiểm tra giá chuyến đi 50 lần liên tiếp trong một phút từ cùng một điểm.

Sai lầm thứ ba là bỏ qua sự khác biệt giữa giá trong ứng dụng và trên trang web. Nhiều dịch vụ taxi và giao hàng có ứng dụng di động hiển thị các mức giá khác với phiên bản web, do các thuật toán khác nhau hoặc các chương trình khuyến mãi chỉ hiển thị trong ứng dụng. Nếu phân tích chỉ dựa trên dữ liệu web, kết quả có thể không phản ánh bức tranh thực tế cho hầu hết người dùng, những người đặt hàng qua ứng dụng.

Sai lầm thứ tư là không thể so sánh các điểm kiểm soát giữa các lần đo. Nếu hôm nay tọa độ khu vực được lấy từ một địa chỉ và ngày mai từ một địa chỉ khác trong cùng một khu vực, sự khác biệt về giá có thể được giải thích không phải do sự thay đổi của thị trường mà chỉ đơn giản là do điểm khởi đầu hoặc điểm kết thúc khác nhau của lộ trình.

Kết luận

Việc giám sát hệ thống giá taxi và giao hàng theo khu vực thành phố mang lại cho doanh nghiệp những lợi thế cụ thể: khả năng phản ứng nhanh chóng với hành động của đối thủ, dự đoán nhu cầu chính xác hơn và đưa ra quyết định hợp lý về khu vực phục vụ và mức giá. Điều kiện chính để có được dữ liệu đáng tin cậy là các yêu cầu phải đến từ các địa chỉ IP, được gắn vật lý với thành phố và khu vực cần thiết, nếu không thì các dịch vụ sẽ cung cấp giá không chính xác hoặc giá trung bình.

Nếu bạn dự định thiết lập việc thu thập dữ liệu thường xuyên về giá taxi hoặc giao hàng ở các khu vực khác nhau, chúng tôi khuyên bạn nên bắt đầu với proxy dân cư với gắn địa lý chính xác đến thành phố cần thiết — chúng cung cấp dữ liệu thực tế nhất và rủi ro bị chặn tối thiểu. Đối với các nhiệm vụ liên quan cụ thể đến các ứng dụng di động taxi và giao hàng, cũng nên xem xét thêm các IP di động, được các hệ thống chống gian lận đánh giá cao hơn như lưu lượng của người dùng thông thường.