Cách gắn proxy có xác thực user:pass vào Selenium WebDriver

Cập nhật:

Khi điều khiển Chrome hoặc Firefox bằng Selenium WebDriver, cờ dòng lệnh --proxy-server=http://ip:port mặc định của Chrome không cho phép truyền trực tiếp username và password, dẫn tới việc trình duyệt bật bảng hỏi mật khẩu làm treo kịch bản Headless. Để gắn mượt mà proxy của VinaProxy vào Selenium, bạn dùng selenium-wire hoặc nạp tiện ích tự động phản hồi sự kiện onAuthRequired.

Selenium · HTTP Proxy Format
http://user:pass@ip:port (selenium-wire / Chrome proxy extension)
Proxy IPv4 riêng (datacenter)
🇺🇸 United States
Còn hàng
Chỉ từ
20.000 ₫ / IP / tháng
Bảng giá theo số lượng
  • 1 IP40.000 ₫
  • 5+ IP35.000 ₫
  • 10+ IP25.000 ₫
  • 20+ IP25.000 ₫
  • 50+ IP25.000 ₫
  • 100+ IP25.000 ₫
  • 200+ IP25.000 ₫
  • 500+ IP25.000 ₫
  • 1000+ IP22.000 ₫
  • 2000+ IP20.000 ₫
Mua United States
Proxy ISP tĩnh
🇺🇸 United States
Còn hàng
Chỉ từ
55.000 ₫ / IP / tháng
Bảng giá theo số lượng
  • 1 IP75.000 ₫
  • 3+ IP70.000 ₫
  • 5+ IP65.000 ₫
  • 10+ IP60.000 ₫
  • 50+ IP60.000 ₫
  • 100+ IP60.000 ₫
  • 200+ IP60.000 ₫
  • 500+ IP55.000 ₫
Mua United States
Proxy theo nền tảng:web-scrapingseo-rank-trackingamazon

2 phương pháp truyền proxy user:pass vào Selenium ChromeDriver

Tùy theo kiến trúc dự án hiện tại của bạn, hãy chọn một trong hai cách tiếp cận chuẩn dưới đây để Chrome tự động đăng nhập proxy:

Phương pháp trong SeleniumCách khai báoKhi nào nên dùng
Cách 1: Thư viện selenium-wireseleniumwire_options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}Nhanh nhất trong Python, hỗ trợ đổi proxy động ngay giữa phiên chạy
Cách 2: Chrome Auth Extension (.zip)Đóng gói manifest.json + background.js bắt sự kiện webRequest.onAuthRequiredDùng với selenium chuẩn trên Java, C#, Python hoặc undetected-chromedriver
Đổi sang Playwrightbrowser.new_context(proxy={'server': ..., 'username': ..., 'password': ...})Khuyên dùng nếu bạn viết mới vì hỗ trợ xác thực gốc không cần plugin

Mẹo tối ưu tốc độ tải trang khi chạy Selenium qua proxy

  • Thiết lập options.page_load_strategy = 'eager' để Selenium thao tác ngay khi cây DOM tải xong mà không chờ các script quảng cáo bên thứ ba
  • Tắt tải hình ảnh bằng prefs = {'profile.managed_default_content_settings.images': 2} nếu script chỉ cần lấy dữ liệu văn bản HTML
  • Kết hợp cờ --disable-blink-features=AutomationControlled để giảm khả năng bị phát hiện WebDriver
  • Đóng trình duyệt bằng driver.quit() trong khối finally: để không làm rò rỉ tiến trình Chrome ngầm

Các bước thực hiện

  1. 1

    Cài đặt selenium-wire hoặc tạo gói tiện ích xác thực

    Trong môi trường Python, chạy lệnh pip install selenium-wire (hoặc chuẩn bị file .zip chứa script onAuthRequired).

  2. 2

    Khai báo thông tin proxy của VinaProxy

    Tạo cấu hình options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}} từ thông số trong bảng quản lý.

  3. 3

    Khởi tạo trình điều khiển webdriver.Chrome

    Gọi driver = webdriver.Chrome(seleniumwire_options=options) để trình duyệt khởi chạy qua cổng proxy.

  4. 4

    Kiểm tra địa chỉ IP hiển thị trên trình duyệt

    Chạy driver.get('https://vinaproxy.com/api/my-ip') và kiểm tra nội dung trang trả về đúng IP đã gắn.

Câu hỏi thường gặp

Tại sao viết `--proxy-server=http://user:pass@ip:port` trong ChromeOptions lại không chạy?

Nhân Chromium cố tình bỏ qua phần user:pass@ trong cờ dòng lệnh --proxy-server vì lý do bảo mật tiến trình hệ điều hành. Do đó bạn bắt buộc phải dùng selenium-wire, tiện ích mở rộng onAuthRequired hoặc chuyển sang Playwright.

Làm sao đổi sang proxy khác mà không cần tắt mở lại cửa sổ Chrome trong selenium-wire?

Bạn chỉ cần gán lại thuộc tính driver.proxy = {'http': 'http://user2:pass2@ip2:port2', 'https': 'http://user2:pass2@ip2:port2'} ngay trong lúc trình duyệt đang mở.

Chạy Selenium ở chế độ `--headless=new` có nạp được tiện ích xác thực proxy không?

Có. Chế độ --headless=new (từ Chrome 109 trở lên) hỗ trợ nạp đầy đủ Chrome Extensions giống hệt chế độ có giao diện.

Trang bị proxy tĩnh tốc độ cao cho dàn Selenium WebDriver

Proxy IPv4 riêng & Static ISP không giới hạn băng thông tại 7 quốc gia.

Mua Proxy cho Selenium

Bài viết liên quan

Proxy theo nền tảng
Proxy cho Web Scraping: cào dữ liệu tốc độ cao, không giới hạn băng thông
Mua proxy IPv4 riêng và ISP tĩnh tốc độ cao cho Python, Playwright, Selenium và Scrapy. Cào dữ liệu giá TMĐT, tin tức và API ổn định 24/7.
Cài đặt proxy
Cách cấu hình proxy trong Playwright (Node.js & Python)
Hướng dẫn gắn proxy HTTP có username và password vào Playwright ở tầng Browser và BrowserContext. Cách chạy nhiều IP song song trên 1 tiến trình.
Cài đặt proxy
Cách cấu hình proxy HTTP(S) trong Python Requests chuẩn kỹ thuật
Hướng dẫn gắn proxy HTTP(S) có username và password vào thư viện Python requests, requests.Session(), xử lý lỗi ProxyError 407 và xoay vòng bể IP.
Cài đặt proxy
Cách cấu hình proxy HTTP(S) trong Puppeteer trên Node.js
Hướng dẫn cấu hình proxy HTTP có mật khẩu trong Puppeteer trên Node.js bằng cờ --proxy-server và hàm await page.authenticate().
Proxy theo nền tảng
Proxy cho SEO & SERP Tracking: kiểm tra thứ hạng từ khóa chính xác theo từng nước
Mua proxy IPv4 riêng và ISP tĩnh tại Việt Nam, Mỹ, Nhật, Hàn, Anh, Singapore để kiểm tra thứ hạng từ khóa SEO địa phương và theo dõi đối thủ.
Proxy theo nền tảng
Proxy cho Amazon: bảo vệ tài khoản Seller Central, KDP và Merch khỏi lỗi Related Account
Mua proxy Static ISP Mỹ và IPv4 riêng Anh, Nhật cho tài khoản Amazon Seller Central, KDP, Merch và cào dữ liệu giá sản phẩm không bị khóa liên kết.
IPV4 · united states
Proxy IPv4 riêng Mỹ: IP datacenter Hoa Kỳ nhanh, dùng riêng và ổn định
Proxy IPv4 Mỹ dùng riêng cho cào dữ liệu, theo dõi thứ hạng, duyệt quảng cáo và nghiên cứu Amazon. IP tĩnh, 1 người 1 IP, băng thông không giới hạn.
ISP · united states
Proxy ISP tĩnh Mỹ: IP Hoa Kỳ cố định với độ uy tín như đường truyền mạng gia đình
Proxy ISP tĩnh Mỹ từ nhà mạng dân cư. IP Mỹ cố định cho người bán Amazon, tài khoản quảng cáo và Instagram. Băng thông không giới hạn.