2016-12-29 2 views
0

ОС: OSX 10.12.2водитель Селен Хром No Such Session

Селен Версия: 2.52.0 Scrapy

Браузер: Chrome

Browser Версия: 55.0.2883.95 (64-разрядная версия)

Hi,

Я пытаюсь использовать селен в своем проекте. Но у меня нет такой ошибки сеанса. когда я использую его с последним драйвером хрома. Также вы можете найти ошибку ниже.

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) 

Также этот мой код.

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

И Browser

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

Это происходит со мной. Я обнаружил, что понижение моей локальной версии Chrome до 53.0.2785.116 позволило провести тестирование с помощью Protractor (снова). Это не зависит от версии, указанной в автономном режиме.

Не отличное решение (так как это ваша локальная версия, и она уничтожит историю вашего браузера), но до тех пор, пока не будет рассмотрена ошибка, описанная ниже, та, которая позволит локальное тестирование с помощью Protractor и Chrome.

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

Видимо есть ноу ошибка с веб-водитель-менеджер, который не позволяет ему быть обновлен до 2.24
https://github.com/angular/webdriver-manager/issues/93

транспортир сам имеет конфигурационный файл, так убедитесь, что у вас версия использование имеет хромоприемник с использованием версии 2.23 на самом высоком уровне. Я использую транспортир 3.1.0 дает мне

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

Из-за этой ошибки ваша локальная версия Chrome будет слишком далеко впереди, что WebDriver-менеджер может поддерживать или ожидает (в данном случае создания сеанса).

Если браузер включен в более раннюю версию Chrome, необходимо будет предотвратить распространение обновлений Google, поскольку Chrome будет пытаться перейти к самой последней версии при каждом повторном открытии браузера.

Смежные вопросы