Commit Graph

155 Commits

Author SHA1 Message Date
jdholtz f91b7d86bc
Extract all contents from zip file when downloading Chromedriver
Extracting just one file that was in a directory caused an error on
Windows. Extracting all fixes this issue.
2023-08-16 11:05:49 -05:00
jdholtz 9102a51636
Set exe name before using it 2023-08-16 08:09:01 -05:00
jdholtz 25877fd95a
Add support for Chromedriver versions 115+ 2023-08-16 07:42:07 -05:00
unknown 44c5ea7127 3.5.2 - Minor changes and fixes
* removed search paths for Chrome Canary and Chrome Beta from find_chrome_executable()
    since chromedriver is always behind schedule so that means a driver for newer versions than current main could not be found and raises Exception.

* Changed/Fixed wrong binary version caused by patcher.
  Due to multi-threading people and a mistake fromy my side,
  the driver binary currently on disk was always used instead of getting new ones. even if you did not use multithreading.
  so even outdated binaries where kept!
  for multithreading people, it now only keeps the most recent binary and throws away others.
  for normal people, you will get the binary you deserve ;)

* Added more descriptive exceptions when Chrome binary could not be found origin
  no connection could be made to Chrome.

* some stuff i forgot
2023-08-09 19:55:16 +02:00
Leon 1f3d410763
Merge pull request #1440 from ultrafunkamsterdam/ultrafunkamsterdam-patch-1-1
version bump
2023-08-08 01:03:09 +02:00
Leon a0712f87cb
Update __init__.py 2023-08-08 01:01:22 +02:00
Leon f3a8a62908
Update patcher.py 2023-08-08 01:00:07 +02:00
Leon 8049384e5a
Update __init__.py 2023-08-08 00:56:49 +02:00
Leon 47234b0b13
update patcher, so it does not use older chromedriver binary. 2023-08-08 00:55:40 +02:00
UltrafunkAmsterdam 2b035b4ea1 compatible with selenium 4.10.
also removed service_args, service_creationflags, service_log_path from constructor. added find_elements_recursive helper function
2023-06-12 11:30:57 +02:00
Leon 46b000ae21
Update __init__.py 2023-06-02 23:04:09 +02:00
Leon 874cf2852b
Update __init__.py 2023-06-02 22:44:05 +02:00
Leon 1a1ba7350b
Update __init__.py 2023-06-02 22:42:43 +02:00
Leon 5225881799
Update __init__.py 2023-06-02 22:34:33 +02:00
unknown 6eab5577f1 3.4.7 - added 'more' compatibility for multi thtreads / processing using Chrome(user_multi_procs=True) => ensure you have at least 1 undetected_chromedriver binary in the roaming appdata/undetected_chromedriver before using 2023-05-09 22:18:22 +02:00
unknown e55104be8d added more compatibility for multi thtreads / processing using Chrome(user_multi_procs=True) => ensure you have at least 1 undetected_chromedriver in the roaming appdata/undetected_chromedriver 2023-05-09 22:08:53 +02:00
UltrafunkAmsterdam bf7dcf8b57 3.4.6 2023-02-10 19:29:02 +01:00
UltrafunkAmsterdam ca5fe635b9 patch referenced before assignment 2023-02-10 19:19:10 +01:00
UltrafunkAmsterdam 5b636cb768 3.4.5
damn versioning

    **patch to fix headless mode**
    currently headless undetected:
    https://i.imgur.com/CME9ElR.png

    (but still unsupported!)

    -https://stackoverflow.com/a/73840130/7058266
    -https://support.google.com/chrome/a/answer/7679408#hdlssMod110

    thanks @mdmintz for this info
2023-02-08 17:48:52 +01:00
UltrafunkAmsterdam 6e471aaac2 PATCH WEDNESDAY
3.4.5
damn versioning

    **patch to fix headless mode**

    -https://stackoverflow.com/a/73840130/7058266
    -https://support.google.com/chrome/a/answer/7679408#hdlssMod110

    thanks @mdmintz for this info
2023-02-08 17:32:16 +01:00
UltrafunkAmsterdam 96abd37cca PATCH WEDNESDAY
4.4.5

    **patch to fix headless mode**

    -https://stackoverflow.com/a/73840130/7058266
    -https://support.google.com/chrome/a/answer/7679408#hdlssMod110

    thanks @mdmintz for this info
2023-02-08 17:18:28 +01:00
UltrafunkAmsterdam 93adbcf0ef 4.4.5
**patch to fix headless mode**

-https://stackoverflow.com/a/73840130/7058266
-https://support.google.com/chrome/a/answer/7679408#hdlssMod110
thanks @mdmintz for the info
2023-02-08 17:08:44 +01:00
UltrafunkAmsterdam d3fe33fceb 3.4.4 - Fixed 2023-02-08 01:27:50 +01:00
UltrafunkAmsterdam 305803ca95 fix for linux find_elements: SyntaxError: missing ) after argument list 2023-02-05 18:37:28 +01:00
UltrafunkAmsterdam 8baa77352f linux unlink bug fix + version bump 2023-02-05 15:36:31 +01:00
UltrafunkAmsterdam 92192e8c5e fix for #1035 + version bump 2023-02-05 15:15:12 +01:00
UltrafunkAmsterdam 166438cde2 fix for #1035 2023-02-05 15:14:39 +01:00
UltrafunkAmsterdam c12fcfc0a8 Oh yes, do wanna rockin' with the best
--------------------

https://youtu.be/kMjhrh_XDWk?t=48

--------------------

Big update! be careful as it -potentially- could break your code.

- rewritten the anti-detection mechanism
  instead of removing and renaming variables, we just keep them, but prevent them from being injected in the first place

- rewritten the file naming, to prevent ending up with 1000 of {randomstring}_chromedriver.exe 's
  instead it is just called undetected_chromedriver.exe

- cleanup
  removed compat,v2 files and tests folder
2023-02-04 22:02:46 +01:00
UltrafunkAmsterdam 18d9f47978 3.2.1 - minor fixes 2022-12-29 11:53:24 +01:00
Leon e0997e060f
Update __init__.py 2022-12-29 11:48:09 +01:00
Ivan Reznikov 88f70fea07
minor typing change to handle list typing 2022-12-29 02:47:58 +04:00
UltrafunkAmsterdam 3bce88f82c 3.2.0 2022-12-28 15:46:52 +01:00
UltrafunkAmsterdam 07abe814a6 more refactoring; fix bug that browser stays opened when script exits 2022-12-26 01:48:01 +01:00
Leon 5df8e00a5a
Merge pull request #643
Set a specific data_path for Patcher if the environment is AWS Lambda
2022-12-17 19:02:16 +00:00
Leon 4db5d9338b
Update example.py
added a variable TAKE_IT_EASY which defaults to True. Since it is a demo it should be 'followable'. if set to False, it won't pause in between and it just flashes by.
2022-12-14 21:34:45 +00:00
Leon ab6c54df6f
re-fix children so it returns a list 2022-12-14 21:22:22 +00:00
UltrafunkAmsterdam 1e8e83f6ae refactoring 2022-11-29 18:26:11 +01:00
UltrafunkAmsterdam e33312535e update readme. ensure children(recursive=True) returns a list 2022-11-29 18:19:28 +01:00
UltrafunkAmsterdam e4d75cbdd0 Merge branch '3.2.0' of http://github.com/ultrafunkamsterdam/undetected-chromedriver into 3.2.0 2022-11-29 18:11:50 +01:00
Leon cb3d91064a
Update example.py 2022-11-29 14:25:42 +01:00
Leon b11a720f3e
Update example.py 2022-11-29 14:25:25 +01:00
Leon 6caf8fe3d0
add additional search path for x32 and updated 'port' description 2022-11-29 11:16:45 +01:00
UltrafunkAmsterdam 6adeb2d285 optimized import maze 2022-11-28 23:47:38 +01:00
UltrafunkAmsterdam 25bca31f35 > added WebElement.click_safe() method, in case you get detected
after clicking a link

> added WebElement.children(self, tag=None, recursive=False)
  to easily get/find child nodes

> added example.py where i can point people at
  when asking silly questions
  (no, its actually quite cool, everyone should see it)

> some refactoring
2022-11-28 23:41:38 +01:00
Leon 33d2a72848
Merge pull request #674 from JJ/patch-1
Probably a typo?
2022-11-21 16:40:20 +00:00
UltrafunkAmsterdam 9db7588a71 3.1.7 2022-11-20 22:07:24 +01:00
UltrafunkAmsterdam 0ce879001f resolve conflicts 2022-11-20 22:05:04 +01:00
UltrafunkAmsterdam 73f554f659 resolve conflicts 2022-11-20 21:44:17 +01:00
Leon 2742ff582d
use_subprocess=True 2022-11-20 21:29:13 +01:00
sebdelsol 75c4a56951
fix ultrafunkamsterdam/undetected-chromedriver#869
handle nested dict when creating undot_prefs (a naive dict.update won't do!)
2022-11-06 20:02:24 +01:00