2017-01-22 8 views
1

Я запускаю сценарий Python на удаленном сервере, периодически повторяющий веб-страницу, используя PhantomJS как webdriver в Selenium.Код ошибки FTP-сервера PhantomJS -6

Сценарий неожиданно останавливается после запуска в течение нескольких часов, выбрасывая следующее сообщение об ошибке:

Traceback (most recent call last): 
    File "long.py", line 74, in <module> 
    data = scrape_page_long() 
    File "long.py", line 19, in scrape_page_long 
    driver = webdriver.PhantomJS(service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any']) 
    File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/webdriver.py", line 52, in __init__ 
    self.service.start() 
    File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/common/service.py", line 96, in start 
    self.assert_process_still_running() 
    File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/common/service.py", line 109, in assert_process_still_running 
    % (self.path, return_code) 
selenium.common.exceptions.WebDriverException: Message: Service phantomjs unexpectedly exited. Status code was: -6 

Я думал сначала, это было связано с ошибками Ssl (отсюда и аргументы), но это, кажется, не связанной Я думаю.

Любые идеи о том, что вызывает эту проблему?

ответ

4

Ваш скрипт никогда не сможет очистить веб-страницу, потому что PhantomJS вообще не работает на сервере.

При входе на сервер и запустить phantomjs --version вы увидите это:

QXcbConnection: Could not connect to display 
PhantomJS has crashed. Please read the bug reporting guide at 
<http://phantomjs.org/bug-reporting.html> and file a bug report. 
Aborted 

Вы можете это исправить, добавив export QT_QPA_PLATFORM=offscreen к вашей учетной записи пользователя .bashrc, либо путем добавления QT_QPA_PLATFORM=offscreen на сервера /etc/environment.

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

  • Нет связанных вопросов^_^