2016-12-29 1 views
0

OS : OSX 10.12.2셀레늄 크롬 드라이버 그러한 세션

셀레늄 버전 : 2.52.0 Scrapy

브라우저 : 크롬

브라우저 버전 : 55.0.2883.95 (64 비트)

안녕하세요,

내 프로젝트에서 셀레늄을 사용하려고합니다. 하지만 세션 오류가 발생하지 않습니다. 최신 크롬 드라이버와 함께 사용할 때. 또한 아래에서 오류를 찾을 수 있습니다.

Traceback (most recent call last): 
    File "/Users/user/Library/Python/2.7/lib/python/site-packages/twisted/internet/defer.py", line 651, in _runCallbacks 
    current.result = callback(current.result, *args, **kw) 
    File "/Users/user/Downloads/Test-2/ecommerce_bot/ecommerce_bot/spiders/hepsiburada.py", line 67, in parseProductComments 
    self.browser.get(response.url) 
    File "/Users/user/Library/Python/2.7/lib/python/site-packages/selenium/webdriver/remote/webdriver.py", line 248, in get 
    self.execute(Command.GET, {'url': url}) 
    File "/Users/user/Library/Python/2.7/lib/python/site-packages/selenium/webdriver/remote/webdriver.py", line 236, in execute 
    self.error_handler.check_response(response) 
    File "/Users/user/Library/Python/2.7/lib/python/site-packages/selenium/webdriver/remote/errorhandler.py", line 192, in check_response 
    raise exception_class(message, screen, stacktrace) 
WebDriverException: Message: no such session 
    (Driver info: chromedriver=2.27.440174 (e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Mac OS X 10.12.2 x86_64) 

또한이 코드입니다.

def __init__(self): 
     super(HepsiburadaSpider, self).__init__() 
     chromedriver = "/Users/user/Downloads/chromedriver" 
     os.environ["webdriver.chrome.driver"] = chromedriver 
     self.browser = webdriver.Chrome(chromedriver) 
+0

'브라우저'가 어떻게 보이는지 보여주기 – Andersson

+0

@Andersson 방금 –

+0

을 제안하거나 도움을 받았습니까? –

답변

1

self.browser.get("url") 
xpath = self.browser.find_element_by_xpath("/html/head/script[17]") 

그리고 브라우저 나에게 일어나고 있었다. Chrome의 로컬 버전을 53.0.2785.116으로 다운 그레이드하면 분도기에서 다시 테스트 할 수있었습니다. 이것은 독립형에 지정된 버전과 독립적입니다.

위의 해결 방법은 현지 버전이므로 브라우저 기록을 지울 수 있지만 아래에 설명 된 버그가 해결 될 때까지 각도기 및 Chrome을 사용하여 로컬 테스트를 허용 할 수 있습니다.

http://www.slimjet.com/chrome/google-chrome-old-version.php

은 분명히 자신이 확신 당신이 버전을 설정 파일을 가지고는 2.24
https://github.com/angular/webdriver-manager/issues/93

각도기로 업데이트 할 수 없습니다 웹 드라이버 관리자와 알고 버그가 버전 2.23을 사용하는 chromedriver가 가장 많이 사용됩니다. 나는 때문에 해당 지역의 크롬 버전이 너무 멀리 앞서 webdriver-관리자가 지원하거나 (세션을 생성,이 경우) 기대하는 것의 될 것입니다이 버그 나에게

"webdriverVersions": { 
    "selenium": "2.53.1", 
    "chromedriver": "2.23", 
    "iedriver": "2.51.0" 
    } 

을 제공 각도기 3.1.0을 사용하고 있습니다.

브라우저를 이전 버전의 Chrome으로 가져 오면 브라우저를 다시 열 때마다 Chrome이 최신 버전으로 이전하기 때문에 Google 업데이트를 방지해야합니다.

관련 문제