Гость
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / seleniom в Python запуск из приложения = ошибка / 10 сообщений из 10, страница 1 из 1
19.05.2021, 17:11
    #40071425
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
Сеть Selenium + Python 3.7. Работаю на Debian 11.
В selenium запускаю Firefox. При запуске просто из Python - все работает нормально.
Все новое и с обновлениями.

При запуске из Postgresql - ругается. Не понимаю что нужно selenium, т.к. ошибка именно на строке выполнения селениум.

При этом, нашел все директории для Python - туда загрузил файл (бинарный от Firefox = geckodriver + лог.файл).
Права доступа к обоим файлам сделал полные (и для групп и для пользователя).

Вот что имею:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
from bs4 import BeautifulSoup
from selenium import webdriver
from lxml import etree
import sys

plpy.notice(sys.path) # вывод списка каталогов куда скинул копии geckodriver 

browser = webdriver.Firefox(executable_path=r'/usr/local/lib/python3.7/dist-packages/geckodriver') # хоть так,
# хоть вот так:    browser = webdriver.Firefox()
url ='https://profilirovanie.ru # 
browser.get(url)
html_text=browser.page_source



А вот что выдает мне (ошибка):
это каталог папок Python:
Код: sql
1.
2.
ЗАМЕЧАНИЕ:  ['/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', 
 '/home/postgres/.local/lib/python3.7/site-packages', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages']



Это ошибка:
Код: sql
1.
2.
3.
ОШИБКА:  selenium.common.exceptions.SessionNotCreatedException: Message: Expected browser binary location, 
but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, 
and no binary flag set on the command line



Это расшифровка ошибки:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
КОНТЕКСТ:  Traceback (most recent call last):
  PL/Python function "i20_py_запросurl", line 30, in <module>
    browser = webdriver.Firefox(executable_path=r'/usr/local/lib/python3.7/dist-packages/geckodriver')
  PL/Python function "i20_py_запросurl", line 173, in __init__
  PL/Python function "i20_py_запросurl", line 156, in __init__
  PL/Python function "i20_py_запросurl", line 251, in start_session
  PL/Python function "i20_py_запросurl", line 320, in execute
  PL/Python function "i20_py_запросurl", line 241, in check_response
функция PL/Python "i20_py_запросurl"



В чем может быть дело?
Чую что речь идет о каком то фильтре, параметре, но на сайте Selenium как то пропущен этот момент.
.
...
Рейтинг: 0 / 0
21.05.2021, 09:43
    #40071857
iot
iot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
О-О-О,
попробуйте явно указать пути до всех бинарников
Код: python
1.
2.
3.
4.
options = Options()
options.binary_location = r"/location/to/Firefox/Binary/firefox"
driver = webdriver.Firefox(options=options, executable_path="/location/to/geckodriver")
driver.get('http://google.com/')
...
Рейтинг: 0 / 0
22.05.2021, 11:23
    #40072146
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
iot,

К сожалению - не удалось.
Теперь ошибка другая и говорит, что процесс что то блокирует.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ОШИБКА:  selenium.common.exceptions.WebDriverException: Message: Process unexpectedly closed with status 1

КОНТЕКСТ:  Traceback (most recent call last):
  PL/Python function "test_python_selenium", line 31, in <module>
    driver = webdriver.Firefox(options=options, executable_path="/home/postgres/_keywords_сбор_статей/firefox_selenium/geckodriver")
  PL/Python function "test_python_selenium", line 173, in __init__
  PL/Python function "test_python_selenium", line 156, in __init__
  PL/Python function "test_python_selenium", line 251, in start_session
  PL/Python function "test_python_selenium", line 320, in execute
  PL/Python function "test_python_selenium", line 241, in check_response
функция PL/Python "test_python_selenium"
key_words=# 



Сам код имеет вид:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.firefox.options import Options
import time, sys, os, psycopg2 

options = Options()
options.binary_location = "/bin/firefox"
driver = webdriver.Firefox(options=options, executable_path="/home/postgres/_keywords_сбор_статей/firefox_selenium/geckodriver")
driver.get('http://google.com/')



.
Код ошибки №1 вылазит, хоть я ставлю r"/bin/firefox" + r"/home/postgres/_keywords_сбор_статей/firefox_selenium/geckodriver"
хоть не ставлю.

.
...
Рейтинг: 0 / 0
22.05.2021, 14:33
    #40072173
iot
iot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
О-О-О,

возможно webdriver не совместим с версией броузера.
посмотрите geckodriver.log, там должно быть больше инфы об ошибке
как вариант попробуйте добавить опцию --headless
Код: python
1.
options.add_argument("--headless")
...
Рейтинг: 0 / 0
23.05.2021, 16:54
    #40072293
iot
iot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
О-О-О,

если firefox не пишет достаточно инфы об ошибке в логах, как вариант можно попробовать chromedriver, возможно будет больше информации
...
Рейтинг: 0 / 0
26.05.2021, 17:58
    #40073245
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
iot,

Запустился. Только запускается в фоновом режиме, это когда окно браузера не открывается.
Соответственно, всё что должно было активироваться (java подкачка файлов не сработала).

Уже прогресс. Только осталось узнать, как принудительно задать команду на работу браузера в явном режиме (не фоновом).
...
Рейтинг: 0 / 0
26.05.2021, 18:00
    #40073246
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
iot,
Как дать команду, чтобы selenium webdriver открывал браузер явно, а не в фоновом режиме?
.
...
Рейтинг: 0 / 0
26.05.2021, 18:03
    #40073247
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
Если нет строки с кодом:
Код: sql
1.
options.add_argument("--headless")



то выводит ошибку:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
key_words=# select роботы_автоматом.test_python_selenium();
ОШИБКА:  selenium.common.exceptions.WebDriverException: Message: Process unexpectedly closed with status 1

КОНТЕКСТ:  Traceback (most recent call last):
  PL/Python function "test_python_selenium", line 32, in <module>
    browser = webdriver.Firefox(options=options, executable_path=r"/home/postgres/_keywords_сбор_статей/firefox_selenium/geckodriver")
  PL/Python function "test_python_selenium", line 173, in __init__
  PL/Python function "test_python_selenium", line 156, in __init__
  PL/Python function "test_python_selenium", line 251, in start_session
  PL/Python function "test_python_selenium", line 320, in execute
  PL/Python function "test_python_selenium", line 241, in check_response
функция PL/Python "test_python_selenium"
key_words=# 


.

Так что решение с options.add_argument("--headless") = ПОМОГЛО.
.
...
Рейтинг: 0 / 0
26.05.2021, 23:13
    #40073352
iot
iot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
О-О-О,

про headless firefox лучше почитать здесь , js не должен отключаться, только UI components, но нужно настроить новый профайл
...
Рейтинг: 0 / 0
27.05.2021, 07:16
    #40073378
О-О-О
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
seleniom в Python запуск из приложения = ошибка
iot,

Спасибо.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / seleniom в Python запуск из приложения = ошибка / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]