Proxy Browser Automation Studio (BAS): Gắn proxy cho từng luồng
Proxy Browser Automation Studio là cách gắn máy chủ proxy cho trình duyệt và trình gửi yêu cầu HTTP trong BAS, để mỗi luồng của kịch bản tự động hoá đi Internet qua một IP riêng. Dân làm MMO và người viết công cụ tự động hoá hay dùng cách này khi chạy nhiều luồng cùng lúc, mỗi luồng cần IP khác nhau để không bị website gom chung. Bài này ProxyVN hướng dẫn hành động đặt proxy trong BAS, cách lấy proxy từ danh sách, kiểm tra IP, đồng bộ thông số trình duyệt với IP và chia số luồng hợp lý. Xem thêm dịch vụ tại ProxyVN.
Tổng quan về proxy Browser Automation Studio
Browser Automation Studio (BAS) là phần mềm của Bablosoft cho phép tạo kịch bản tự động hoá trình duyệt bằng cách kéo thả hành động, không bắt buộc viết mã. Kịch bản có thể mở trang, bấm nút, điền biểu mẫu, đọc dữ liệu, giải quyết logic điều kiện, vòng lặp, rồi đóng gói thành chương trình chạy độc lập. Thông tin sản phẩm có ở trang Browser Automation Studio của Bablosoft.
BAS có hai cách làm việc với web: điều khiển trình duyệt nhân Chromium đầy đủ, và gửi yêu cầu HTTP trực tiếp qua module HTTP client mà không mở trình duyệt. Mỗi cách có chỗ đặt proxy riêng. Đây là điểm người mới hay bỏ sót: đặt proxy cho trình duyệt rồi nhưng phần gửi yêu cầu HTTP vẫn đi qua IP thật.
Vì sao proxy quan trọng với BAS
- Chạy đa luồng: BAS mạnh ở chỗ chạy hàng chục luồng song song. Không có proxy, mọi luồng chung một IP, website dễ nhận ra và chặn cả cụm.
- Kiểm thử theo vùng: xem trang web hiển thị gì với người dùng ở Việt Nam, Mỹ, Nhật.
- Thu thập dữ liệu: chia yêu cầu qua nhiều IP để tránh giới hạn tần suất.
- Quản lý nhiều tài khoản hợp lệ: mỗi tài khoản gắn một IP cố định để lịch sử đăng nhập nhất quán.

Mỗi luồng một IP
BAS khác trình duyệt antidetect ở đâu
Trình duyệt antidetect như VMLogin, GoLogin tập trung vào quản lý hồ sơ trình duyệt, mỗi hồ sơ một vân tay và một proxy, người dùng thao tác tay hoặc tự động qua API. BAS tập trung vào tạo kịch bản tự động hoá. Hai loại có thể kết hợp: BAS điều khiển hồ sơ của trình duyệt antidetect. Phần kết nối BAS với VMLogin đã có trong bài proxy VMLogin, bài này không nhắc lại mà đi vào proxy ngay trong BAS.
Bản miễn phí và bản trả phí
BAS có bản miễn phí đủ để tạo và chạy kịch bản có proxy. Bản trả phí thêm tính năng như bảo vệ mã kịch bản khi phân phối, chạy nhiều luồng hơn trong chương trình đóng gói, và một số dịch vụ đi kèm. Việc đặt proxy cơ bản không phụ thuộc bản nào.
Hành động đặt proxy Browser Automation Studio cho trình duyệt
Trong BAS, proxy cho trình duyệt được đặt bằng hành động Proxy nằm trong nhóm hành động trình duyệt. Mỗi luồng có trình duyệt riêng, nên đặt proxy trong luồng nào thì chỉ luồng đó dùng.

Hành động đặt proxy
Bước 1: Thêm hành động Proxy
Trong trình soạn kịch bản, tìm hành động Proxy bằng ô tìm kiếm, kéo vào đầu kịch bản, trước hành động mở trang đầu tiên. Proxy cần được đặt trước khi trình duyệt tải trang, đặt sau thì các yêu cầu đã gửi vẫn đi qua IP cũ.
Bước 2: Điền chuỗi proxy
Ô proxy nhận chuỗi dạng host:port, có thể kèm tài khoản mật khẩu. BAS hiểu nhiều định dạng như host:port:user:pass hay user:pass@host:port, nhưng nên thống nhất một định dạng trong cả dự án. Các định dạng phổ biến được liệt kê trong bài định dạng proxy.
Bước 3: Chọn kiểu proxy
Chọn HTTP hoặc SOCKS5 tuỳ cổng nhà cung cấp cấp. Chọn sai kiểu là lỗi rất phổ biến, ví dụ chọn HTTP cho cổng SOCKS5, trình duyệt sẽ báo lỗi kết nối hoặc trang trắng. Proxy ProxyVN hỗ trợ cả hai giao thức, anh em kiểm tra đúng cổng của từng loại trong trang quản lý.
Bước 4: Điền tài khoản mật khẩu nếu cần
Nếu proxy xác thực bằng tài khoản, điền vào ô login và password riêng thay vì ghép trong chuỗi, giúp tránh lỗi khi mật khẩu có ký tự đặc biệt. Nếu proxy xác thực bằng IP whitelist, để trống hai ô và thêm IP máy chạy BAS vào trang quản lý proxy.
Bước 5: Chạy thử với một luồng
Chạy kịch bản với một luồng, mở trang trả về IP, xem trình duyệt hiển thị IP của proxy. Chỉ khi một luồng chạy đúng mới tăng số luồng. Gỡ lỗi khi đang chạy năm mươi luồng khó hơn nhiều.
Proxy Browser Automation Studio cho HTTP client
Module HTTP client gửi yêu cầu trực tiếp, nhanh và nhẹ hơn trình duyệt, thường dùng cho gọi API hay tải trang đơn giản. Proxy của HTTP client đặt riêng, không dùng chung với trình duyệt.
Đặt proxy cho HTTP client
Dùng hành động đặt proxy trong nhóm HTTP client, các ô tương tự: chuỗi proxy, kiểu, tài khoản, mật khẩu. Nên đặt cùng proxy với trình duyệt của luồng đó nếu kịch bản dùng cả hai, để website thấy cùng một IP cho cả hai loại yêu cầu.
Khi nào dùng HTTP client thay trình duyệt
HTTP client hợp với trang không cần chạy JavaScript, API trả JSON, tải tệp. Mỗi yêu cầu tốn ít dung lượng và tài nguyên máy hơn nhiều so với mở trình duyệt. Với proxy tính theo dung lượng, chuyển phần việc phù hợp sang HTTP client giảm chi phí đáng kể.
Cookie giữa trình duyệt và HTTP client
Khi đăng nhập bằng trình duyệt rồi gọi API bằng HTTP client, cần chuyển cookie từ trình duyệt sang HTTP client. Nếu hai bên dùng IP khác nhau, website có thể thấy cùng một phiên đến từ hai IP và huỷ phiên. Đây là lý do nên đồng bộ proxy cho cả hai.
Lấy proxy Browser Automation Studio từ danh sách
Với kịch bản nhiều luồng, mỗi luồng cần một proxy khác nhau. BAS có cơ chế tài nguyên (resource) để quản lý danh sách và phân phối cho các luồng.

Lấy proxy từ danh sách
Tạo tài nguyên danh sách proxy
Trong phần tài nguyên của kịch bản, tạo một tài nguyên kiểu danh sách chuỗi, nguồn có thể là tệp văn bản, đường dẫn URL hoặc nhập tay. Mỗi dòng một proxy. Khi chạy chương trình, người dùng chỉ cần chọn tệp proxy, không phải sửa kịch bản. Cách khai báo tài nguyên được mô tả trong tài liệu wiki của Bablosoft.
Cách phân phối cho luồng
Tài nguyên có các tuỳ chọn như số lần mỗi dòng được dùng, có xoá dòng sau khi dùng không, có trộn ngẫu nhiên không. Ví dụ mỗi proxy chỉ cho một luồng dùng cùng lúc, hoặc cho tối đa ba luồng dùng chung. Đặt đúng tuỳ chọn này quyết định mỗi IP gánh bao nhiêu việc.
Dùng trong hành động Proxy
Trong ô chuỗi proxy của hành động Proxy, thay giá trị cố định bằng tham chiếu tới tài nguyên. Mỗi lần luồng chạy tới hành động này, BAS lấy một dòng từ danh sách theo quy tắc đã đặt. Kết hợp với vòng lặp, luồng có thể đổi proxy sau mỗi tác vụ.
Proxy xoay chỉ cần một dòng
Với proxy xoay, nhà cung cấp cấp một địa chỉ, phía sau tự đổi IP. Danh sách chỉ cần một dòng, cho phép nhiều luồng dùng chung. Khi cần đổi IP chủ động, gọi API đổi IP của nhà cung cấp bằng HTTP client trong kịch bản. Cách làm có trong bài API đổi IP proxy xoay. Một số nhà cung cấp cấp khoá xoay để quản lý nhiều cổng, khái niệm này có trong bài key proxy xoay.
Kiểm tra IP trong kịch bản proxy Browser Automation Studio
Proxy chết hoặc sai kiểu khiến luồng chạy vô ích. Thêm bước kiểm tra IP ngay sau khi đặt proxy giúp phát hiện sớm.

Kiểm tra IP trong kịch bản
Kiểm tra bằng HTTP client
Gửi yêu cầu tới một dịch vụ trả về IP dạng JSON, đọc giá trị IP và quốc gia. Nếu yêu cầu lỗi, đánh dấu proxy hỏng và lấy proxy khác. Nếu IP trả về trùng IP máy chạy BAS, proxy không được áp dụng.
Kiểm tra bằng trình duyệt
Mở trang hiển thị IP trong trình duyệt của luồng. Cách này chậm hơn nhưng kiểm tra đúng đường đi của trình duyệt, kể cả các yếu tố như WebRTC có lộ IP thật không. Vấn đề WebRTC được giải thích trong bài WebRTC proxy là gì.
Ghi log mỗi luồng
Ghi vào log số luồng, proxy đang dùng, IP thực tế, thời điểm. Khi một luồng gặp lỗi lạ, log giúp biết lỗi có liên quan tới một proxy cụ thể hay không. Không ghi mật khẩu proxy vào log nếu log được chia sẻ.
Thử lại với proxy khác
Bọc phần đặt proxy và kiểm tra IP trong khối xử lý lỗi. Khi thất bại, lấy proxy tiếp theo trong tài nguyên và thử lại, giới hạn số lần thử để luồng không lặp vô hạn khi cả danh sách hỏng.
Đồng bộ trình duyệt với proxy Browser Automation Studio
Website không chỉ nhìn IP. Trình duyệt có múi giờ, ngôn ngữ, vị trí, vân tay. Nếu IP ở Mỹ mà múi giờ trình duyệt ở Việt Nam, website dễ nhận ra điểm bất thường.
Múi giờ và vị trí theo IP
BAS có tuỳ chọn đặt múi giờ và vị trí địa lý của trình duyệt khớp với IP proxy. Bật tuỳ chọn này, hoặc tự đọc quốc gia từ bước kiểm tra IP rồi đặt múi giờ tương ứng. Tầm quan trọng của việc đồng bộ có trong bài đồng bộ múi giờ với IP proxy.
Ngôn ngữ
Đặt tiêu đề Accept-Language và ngôn ngữ trình duyệt phù hợp với vùng của IP. IP Việt Nam đi kèm ngôn ngữ tiếng Việt là tự nhiên, IP Mỹ đi kèm tiếng Anh Mỹ.
WebRTC
WebRTC có thể làm lộ IP thật qua kết nối trực tiếp. Trong BAS, cấu hình WebRTC để thay IP bằng IP proxy hoặc tắt. Cách tắt WebRTC trên trình duyệt nói chung có trong bài cách tắt WebRTC.
Vân tay trình duyệt
Bablosoft có dịch vụ thay vân tay riêng dùng kèm BAS, cung cấp bộ thông số thiết bị thật. Khi chạy nhiều luồng trên cùng máy, mỗi luồng một vân tay khác nhau giúp các luồng không trông giống hệt nhau. Khái niệm vân tay canvas được giải thích trong bài canvas fingerprint.
Chia số luồng trên mỗi proxy Browser Automation Studio
Số luồng trên mỗi proxy ảnh hưởng trực tiếp tới tỷ lệ thành công và độ bền của IP.
Nguyên tắc chung
Việc gắn với tài khoản (đăng nhập, quản lý trang) nên một luồng một IP, giữ IP cố định cho tài khoản đó. Việc thu thập dữ liệu công khai có thể nhiều luồng chung một IP nếu tần suất mỗi luồng thấp. Website càng khó tính, số luồng mỗi IP càng phải ít.
Bảng tham khảo
Loại việc |
Số luồng mỗi proxy |
Loại proxy phù hợp |
|---|---|---|
Quản lý tài khoản, đăng nhập |
1 |
Proxy tĩnh dân cư hoặc ISP |
Kiểm thử giao diện theo vùng |
1 đến 3 |
Proxy tĩnh theo vùng |
Thu thập dữ liệu trang dễ tính |
3 đến 10 |
Proxy datacenter |
Thu thập dữ liệu trang khó tính |
1 đến 2 |
Proxy dân cư xoay |
Gọi API công khai |
5 đến 20 |
Proxy datacenter |
Con số chỉ để tham khảo, thực tế phụ thuộc website và tần suất. Bài 1 proxy chạy được bao nhiêu luồng giải thích cách thử để tìm con số phù hợp.
Tài nguyên máy cũng là giới hạn
Mỗi luồng trình duyệt tiêu tốn vài trăm MB bộ nhớ và một phần CPU. Máy 16 GB RAM thường chạy được vài chục luồng trình duyệt. Khi máy quá tải, trang tải chậm, hết thời gian chờ, dễ nhầm là proxy kém. Theo dõi tài nguyên máy song song với tỷ lệ lỗi.
Chọn loại proxy Browser Automation Studio phù hợp
Không có loại proxy tốt nhất cho mọi kịch bản. Chọn theo việc kịch bản làm.
Proxy tĩnh
IP cố định, phù hợp với tài khoản cần lịch sử đăng nhập nhất quán. Proxy tĩnh dân cư hoặc ISP cho độ tin cậy cao với các nền tảng mạng xã hội.
Proxy xoay
IP đổi theo thời gian hoặc mỗi yêu cầu, phù hợp thu thập dữ liệu khối lượng lớn. Với tác vụ cần giữ phiên vài phút, chọn chế độ giữ phiên (sticky session), khái niệm có trong bài sticky session proxy là gì.
Proxy theo nhà mạng Việt Nam
Kịch bản làm việc với website, ứng dụng Việt Nam cần IP Việt Nam để thấy đúng nội dung và ít bị nghi ngờ. Nếu cần IP Việt Nam theo nhà mạng Viettel, VNPT, FPT cho kịch bản BAS, anh em có thể mua proxy tại ProxyVN, mỗi proxy hỗ trợ cả HTTP và SOCKS5. Hướng dẫn chọn proxy cho công cụ MMO nói chung có trong bài mua proxy chạy tool làm MMO.
Sửa lỗi thường gặp với proxy Browser Automation Studio
Bảng dưới gom các lỗi hay gặp khi gắn proxy trong BAS.
Hiện tượng |
Nguyên nhân khả dĩ |
Cách sửa |
|---|---|---|
Trang trắng hoặc lỗi kết nối |
Sai kiểu proxy, proxy chết |
Kiểm tra kiểu HTTP hay SOCKS5, thử proxy riêng |
Hỏi tài khoản mật khẩu liên tục |
Sai xác thực |
Điền login, password riêng, kiểm tra whitelist |
Trình duyệt đúng IP, HTTP client sai IP |
Chưa đặt proxy cho HTTP client |
Thêm hành động proxy cho HTTP client |
Trang đầu tiên vẫn IP thật |
Đặt proxy sau khi mở trang |
Đưa hành động Proxy lên đầu |
Nhiều luồng cùng một IP |
Tuỳ chọn tài nguyên cho dùng chung |
Chỉnh số lần dùng mỗi dòng |
Tải chậm khi tăng luồng |
Máy quá tải hoặc proxy quá tải |
Giảm luồng, thêm proxy |
Lỗi xác thực 407
Khi proxy trả mã 407, trình duyệt có thể hiện hộp hỏi tài khoản hoặc dừng tải. Kiểm tra lại tài khoản, mật khẩu, ký tự đặc biệt, và IP máy có trong whitelist không. Cơ chế chi tiết có trong bài sửa lỗi 407 Proxy Authentication Required.
Thử proxy ngoài BAS
Khi không rõ lỗi do proxy hay do kịch bản, thử proxy bằng trình duyệt thường hoặc lệnh curl. Proxy chạy được bên ngoài mà lỗi trong BAS thì lỗi nằm ở cấu hình kịch bản. Các tình huống lạ hơn thường đã được người dùng khác hỏi trên diễn đàn cộng đồng Bablosoft.
Gắn proxy Browser Automation Studio cố định cho từng tài khoản
Khi kịch bản làm việc với tài khoản, mỗi tài khoản nên luôn đi qua cùng một IP. Nếu hôm nay tài khoản đăng nhập từ IP Hà Nội, mai từ IP TP.HCM, ngày kia từ IP Mỹ, nền tảng dễ đánh dấu bất thường và yêu cầu xác minh.
Lưu cặp tài khoản và proxy
Thay vì để BAS lấy proxy ngẫu nhiên từ danh sách, lưu tài khoản và proxy thành cặp trên cùng một dòng, ví dụ tài khoản, mật khẩu, proxy cách nhau bằng dấu phân cách. Khi luồng lấy một dòng, nó có luôn proxy tương ứng. BAS cũng có module cơ sở dữ liệu cho phép lưu bảng tài khoản kèm cột proxy, tiện khi số tài khoản lớn.
Lưu hồ sơ trình duyệt
Ngoài IP, cookie và bộ nhớ cục bộ của trình duyệt cũng cần giữ giữa các lần chạy. BAS cho lưu hồ sơ trình duyệt vào thư mục riêng cho từng tài khoản. Mỗi lần chạy, nạp đúng hồ sơ và đúng proxy của tài khoản đó, nền tảng sẽ thấy một người dùng quen thuộc quay lại.
Khi proxy của tài khoản hỏng
Nếu proxy gắn với tài khoản chết, đừng tự động đổi sang proxy ngẫu nhiên khác. Đánh dấu tài khoản tạm dừng, thay proxy mới cùng vùng, cùng nhà mạng nếu có thể, rồi mới chạy lại. Đổi IP đột ngột sang vùng khác là thời điểm tài khoản dễ bị kiểm tra nhất. Kinh nghiệm chọn IP để nuôi tài khoản có trong bài proxy nuôi tài khoản Facebook.
Bảo mật thông tin proxy Browser Automation Studio
Kịch bản BAS thường được chia sẻ trong nhóm hoặc đóng gói bán cho người khác. Thông tin proxy nằm sai chỗ có thể bị lộ.
Không ghi proxy cứng trong kịch bản
Proxy ghi thẳng trong hành động sẽ đi theo tệp kịch bản khi chia sẻ. Dùng tài nguyên để người chạy tự nhập proxy của họ. Khi gửi kịch bản cho người khác, kiểm tra lại không còn tài khoản proxy nào trong các hành động.
Cẩn thận với log và ảnh chụp màn hình
Log chi tiết có thể in chuỗi proxy đầy đủ cả mật khẩu. Ảnh chụp màn hình gửi lên nhóm hỏi lỗi cũng hay để lộ ô proxy. Che thông tin trước khi chia sẻ.
Đổi mật khẩu khi nghi lộ
Nếu lỡ chia sẻ kịch bản chứa proxy, đổi mật khẩu trong trang quản lý của nhà cung cấp ngay. Proxy bị người lạ dùng có thể làm IP bị đánh dấu xấu, ảnh hưởng tới mọi tài khoản đang chạy qua IP đó.
Sử dụng proxy Browser Automation Studio đúng mục đích
BAS là công cụ tự động hoá mạnh, có thể dùng cho việc chính đáng như kiểm thử, thu thập dữ liệu công khai, tự động hoá tác vụ lặp lại trên tài khoản của chính mình. Proxy giúp các việc này chạy ổn định.
Tôn trọng điều khoản của website
Mỗi nền tảng có điều khoản về tự động hoá. Gửi quá nhiều yêu cầu, tạo tài khoản hàng loạt hay tương tác giả có thể vi phạm điều khoản và bị khoá. Proxy không thay đổi tính chất của hành vi.
Giữ tần suất hợp lý
Đặt độ trễ giữa các thao tác, giới hạn số yêu cầu mỗi phút. Tần suất giống người dùng thật vừa giảm tải cho website, vừa giúp kịch bản chạy lâu dài. Tổng quan về proxy cho công cụ tự động có trong bài proxy cho bot tự động.
So sánh với công cụ cùng loại
ZennoPoster là công cụ tự động hoá khác cũng phổ biến với dân MMO, cách gắn proxy có điểm giống BAS. Bài proxy ZennoPoster hướng dẫn riêng cho công cụ đó.
Câu hỏi thường gặp về proxy Browser Automation Studio
BAS có dùng được proxy SOCKS5 có mật khẩu không
Có. Chọn kiểu SOCKS5 trong hành động Proxy và điền tài khoản mật khẩu vào ô riêng. Kiểm tra đúng cổng SOCKS5 của nhà cung cấp.
Có cần đặt proxy cho mỗi lần lặp không
Không bắt buộc. Proxy giữ nguyên cho trình duyệt của luồng tới khi đặt proxy khác. Chỉ đặt lại khi muốn đổi IP giữa các lần lặp.
Proxy miễn phí có dùng được với BAS không
Về kỹ thuật thì được, nhưng proxy miễn phí chết nhanh, chậm, nhiều IP đã bị website chặn sẵn. Kịch bản phải thử lại liên tục, tỷ lệ lỗi cao, tốn công hơn tiền tiết kiệm được.
Chương trình đóng gói từ BAS có cho người dùng nhập proxy không
Có, nếu khai báo proxy là tài nguyên. Khi chạy chương trình, người dùng chọn tệp proxy của họ trong giao diện cài đặt, không cần mở kịch bản.
BAS có chạy được trên VPS không
Có. Nhiều người chạy BAS trên VPS Windows để kịch bản hoạt động liên tục không phụ thuộc máy cá nhân. Lưu ý IP của VPS là IP datacenter, nên vẫn cần proxy cho từng luồng nếu làm việc với nền tảng khó tính. Khi dùng proxy xác thực bằng whitelist, thêm IP của VPS chứ không phải IP máy nhà. So sánh vai trò của proxy và VPS có trong bài proxy và VPS.
Làm sao biết proxy đang làm chậm kịch bản
Đo thời gian tải trang khi chạy một luồng không proxy và một luồng có proxy trên cùng máy. Nếu chênh lệch lớn, thử proxy khác cùng loại. Nếu cả hai đều chậm, vấn đề nằm ở máy hoặc ở website đích.
Tổng kết
Proxy Browser Automation Studio cần đặt ở hai chỗ: hành động Proxy cho trình duyệt và hành động proxy cho HTTP client, luôn đặt trước khi tải trang. Dùng tài nguyên để phân phối danh sách proxy cho từng luồng, kiểm tra IP ngay sau khi đặt, đồng bộ múi giờ, ngôn ngữ với IP và chia số luồng theo độ khó của website. Cần proxy Việt Nam ổn định cho kịch bản BAS, anh em liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam để được tư vấn.