Khi sử dụng proxy với phantomjs, nó sử dụng tác nhân người dùng python mặc định.Proxy + Selenium + PhantomJS không thể thay đổi User-Agent
Chạy: Python 3.5.1 trên ubuntu 14,04
service_args = []
if self.proxy:
service_args.extend([
'--proxy={}:{}'.format(self.proxy.host, self.proxy.port),
'--proxy-type={}'.format(self.proxy.proto),
])
if self.proxy.username and self.proxy.password:
service_args.append(
'--proxy-auth={}:{}'.format(self.proxy.username, self.proxy.password)
)
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["phantomjs.page.settings.userAgent"] = (
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/53 "
"(KHTML, like Gecko) Chrome/15.0.87"
)
self.webdriver = webdriver.PhantomJS(service_args=service_args, desired_capabilities=dcap)
Và lỗi:
Message: Error Message => 'Unable to find element with css selector '#navcnt td.cur'' caused by Request => {"headers":{"Accept":"application/json","Accept-Encoding":"identity","Connection":"close","Content-Length":"105","Content-Type":"application/json;charset=UTF-8","Host":"127.0.0.1:39281","User-Agent":"Python-urllib/3.5"}...
Trong câu hỏi tương tự đã có kết luận vấn đề đó là do nhà cung cấp proxy bằng cách thiết lập user-agent tại máy chủ mức độ, tuy nhiên tôi nghi ngờ đó là trường hợp ở đây kể từ khi tôi có thể sửa đổi nó bằng cách sử dụng proxy với chrome.