2014-06-11 19 views
14

Sử dụng Python 2.7.5, selen mô-đun trăn (2.41.0) và chromedriver (2.9).Cờ dòng lệnh không được hỗ trợ: --ignore-certificate-errors

Khi Chrome khởi động, nó hiển thị thông báo trong thanh bật lên màu vàng: "Bạn đang sử dụng cờ dòng lệnh không được hỗ trợ: --ignore-certificate-errors. Tính ổn định và bảo mật sẽ bị ảnh hưởng". Ví dụ đơn giản này tái tạo vấn đề.

from selenium import webdriver 
browser = webdriver.Chrome() 
browser.get("http://google.com/") 

Làm cách nào để xóa cờ dòng lệnh này trong selenium python?

+1

Dưới đây là khá cùng một câu hỏi http://stackoverflow.com/q/23834413/2504101 nhưng giải pháp có vẻ là khác nhau – olyv

+1

nhưng câu hỏi có liên quan đến mã java, không python – Loknar

+0

câu trả lời chấp nhận tại là lỗi thời : @Shawn Erquhart đã đúng. Không cần thiết với các tùy chọn Chrome, không có cảnh báo nào được hiển thị. Chrome 2.20 hoạt động ngoài hộp. –

Trả lời

3

Vấn đề này được giải quyết as of Chromedriver 2.11 (phát hành tháng 10 năm 2014). Cập nhật bây giờ sẽ làm các trick.

13

Mã bổ sung này loại bỏ cờ dòng lệnh --ignore-certificate-errors cho tôi. Theo tôi, các đối số có thể được thêm vào webdriver.Chrome() có thể (và nên) được tài liệu tốt hơn ở đâu đó, tôi tìm thấy giải pháp này trong một nhận xét trên chromedriver issues page (xem bài đăng # 25).

from selenium import webdriver 
options = webdriver.ChromeOptions() 
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"]) 
browser = webdriver.Chrome(chrome_options=options) 
browser.get("http://google.com/") 
+2

Làm việc cho tôi. Cảm ơn rất nhiều! –

+1

Đã thử nhưng không hoạt động đối với tôi (Python 2.7.8, selenium 2.42.1 ... không chắc chắn phiên bản trình điều khiển nào tôi đang sử dụng ... và Chrome là phiên bản 37.0.2062.120 m. Tôi đang sử dụng Windows 7 với SP1.) – ArtOfWarfare

2

bạn có thể sử dụng cờ sau --test kiểu

  var options = new ChromeOptions(); 
      options.AddArguments(new[] { 
       "--start-maximized", 
       "allow-running-insecure-content", 
       "--test-type" }); 

      return new ChromeDriver(options); 
+0

đó là javascript, không phải python, nhưng vâng, đã có một số cách để sử dụng cờ loại thử nghiệm để loại bỏ thanh bật lên và vẫn bỏ qua lỗi chứng chỉ – Loknar

1

Đây là những gì tôi đang sử dụng trong Java để có được xung quanh vấn đề này nhưng tôi không biết làm thế nào Python làm việc nhưng cũng đáng thử nào

ChromeOptions chrome = new ChromeOptions(); 
chrome.addArguments("test-type"); 
     capabilities.setCapability(ChromeOptions.CAPABILITY, chrome); 
     capabilities.setCapability("chrome.binary", 
       "C:\\set path to driver here\\chromedriver.exe"); 
1
options = webdriver.ChromeOptions() 

    options.add_argument('test-type') 
    chromedriver = 'resources/chromedriver.exe' 



    os.environ["webdriver.chrome.driver"] = chromedriver 

    self.driver = webdriver.Chrome(chromedriver,chrome_options=options) 
1

tôi đã có vấn đề này bằng Selenium2 với Robot trên máy Mac. Vấn đề kết thúc lên được rằng tôi đã có phiên bản sai của chromedriver được cài đặt trên hệ thống của tôi ...

$ chromedriver 
Starting ChromeDriver (v2.9.248307) on port 9515 <<Version 2.9 was the problem 

Tôi tìm thấy nó trong /usr/local/bin và chỉ cần loại bỏ nó và thay thế nó từ official download page và nó dường như đã xóa tất cả lên ...

$ chromedriver 
Starting ChromeDriver 2.25.426935 (820a95b0b81d33e42712f9198c215f703412e1a1) on port 9515 
Only local connections are allowed. 
Các vấn đề liên quan