Skip to content

Conversation

@txtsd
Copy link
Contributor

@txtsd txtsd commented Nov 14, 2023

Before this change:

Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     FlareSolverr 3.3.10
Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     Testing web browser installation...
Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     Platform: Linux-6.5.9-zen2-1-zen-x86_64-with-glibc2.38
Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     Chrome / Chromium path: /usr/bin/chromium
Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     Chrome / Chromium major version: 119
Nov 14 10:14:59 dungeon-of-data flaresolverr[16725]: 2023-11-14 10:14:59 INFO     Launching web browser...
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]: Traceback (most recent call last):
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/utils.py", line 296, in get_user_agent
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     driver = get_webdriver()
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:              ^^^^^^^^^^^^^^^
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/utils.py", line 177, in get_webdriver
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     driver = uc.Chrome(options=options, browser_executable_path=browser_executable_path,
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/undetected_chromedriver/__init__.py", line 399, in __init__
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     if headless or options.headless:
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:                    ^^^^^^^^^^^^^^^^
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]: AttributeError: 'ChromeOptions' object has no attribute 'headless'
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]: During handling of the above exception, another exception occurred:
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]: Traceback (most recent call last):
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/flaresolverr.py", line 105, in <module>
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     flaresolverr_service.test_browser_installation()
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/flaresolverr_service.py", line 72, in test_browser_installation
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     user_agent = utils.get_user_agent()
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:                  ^^^^^^^^^^^^^^^^^^^^^^
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:   File "/opt/flaresolverr/utils.py", line 302, in get_user_agent
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]:     raise Exception("Error getting browser User-Agent. " + str(e))
Nov 14 10:15:01 dungeon-of-data flaresolverr[16725]: Exception: Error getting browser User-Agent. 'ChromeOptions' object has no attribute 'headless'
Nov 14 10:15:01 dungeon-of-data systemd[1]: flaresolverr.service: Main process exited, code=exited, status=1/FAILURE

After this change:

2023-11-14 10:42:58 INFO     FlareSolverr 3.3.10
2023-11-14 10:42:58 INFO     Testing web browser installation...
2023-11-14 10:42:58 INFO     Platform: Linux-6.5.9-zen2-1-zen-x86_64-with-glibc2.38
2023-11-14 10:42:58 INFO     Chrome / Chromium path: /usr/bin/google-chrome-stable
2023-11-14 10:42:58 INFO     Chrome / Chromium major version: 119
2023-11-14 10:42:58 INFO     Launching web browser...
2023-11-14 10:43:01 INFO     FlareSolverr User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36
2023-11-14 10:43:01 INFO     Test successful!
2023-11-14 10:43:01 INFO     Serving on http://0.0.0.0:8191
2023-11-14 10:43:36 INFO     Incoming request => POST /v1 body: {'maxTimeout': 55000, 'cmd': 'request.get', 'url': 'https://badasstorrents.com/torrents/search/<snipped>/date/desc', 'proxy': {'url': '127.0.0.1:8080'}}
2023-11-14 10:43:38 INFO     Challenge detected. Title found: Just a moment...
2023-11-14 10:43:43 INFO     Challenge solved!
2023-11-14 10:43:44 INFO     Response in 7.283 s

Based on ultrafunkamsterdam/undetected-chromedriver#1602 since it isn't merged into UC yet.

Ref: SeleniumHQ/selenium@b5cfcc4
Co-authored-by: GaspardRuan <1039553124@qq.com>
Signed-off-by: txtsd <code@ihavea.quest>
@ilike2burnthing
Copy link
Contributor

@txtsd
Copy link
Contributor Author

txtsd commented Nov 14, 2023

I don't think it matters for us because we launch in non-headless mode and just hide the window.

EDIT: If there is a more correct way, that will get merged into UC and then we can pull those changes anyway, but this works correctly for now. It's able to solve challenges that jackett threw at it.

@ilike2burnthing ilike2burnthing merged commit f7e316f into FlareSolverr:master Dec 11, 2023
@ilike2burnthing
Copy link
Contributor

ilike2burnthing commented Dec 11, 2023

v3.3.11

@txtsd txtsd deleted the selenium_compat branch December 21, 2023 03:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants