-
-
Notifications
You must be signed in to change notification settings - Fork 807
Fixed entire application. Should work as intended now. #612
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
… loggingPrefs and improved error handling. Working as of 07-07-2024 by Leaske
Should be its original values
should be its orignal value, this was used for testing
Removed proxies, was used for testing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
Appreciate the effort you put there, @leaskeg, though it seems like there are still some issues when I run it. It attempts to get the chrome driver automatically but fails to do so. I attached a screenshot of the error, including the written text. PS C:\Users\amind\OneDrive\Desktop\Projects\YouTube-Viewer> py -3.10 .\youtube_viewer.py |
Could you attempt to download the chromedriver manually and add it to the folder? Much like below? I will attempt to work on the automatic version. But for now, this should be working. Fingers crossed. |
|
I manually inserted a ChromeDriver and gave it a fixed path using For the time being, I installed ChromeDriver and called it
Replaced the following lines at line 113: It works so far. But yeah, it should automatically download Chrome drivers seamlessly. I have other scripts currently using undetected Selenium that always download the latest Chrome driver correctly, so the issue lies with how it is implemented now. Note I am using Windows. |
I will attempt to make the automatic download work sometime next week :) Glad it works manually tho. |
|
Thanks, @leaskeg, for your efforts! And I appreciate what you have done to bring the project back to life. I am curious about your current fixes. Are the views still active on your analytics? |
They are actually! Tried with 100 views from webshares proxies. They counted. |
|
@leaskeg And if I get " |
I will get back to you on that. Its possible that it detects the browser as being automated which is not ideal, because youtube would be able to detect the views as bots. But that would indicate a problem with the undetected-chromedriver im using. I will look it over! |
|
I have fixed the detection issue. I will attempt to fix the automatic chromedriver mentioned above before releasing. And thank you for all the feedbacks. It really helps, you can only test so much locally 👍 |
|
This version should hopefully fix the issues people are mentioning here in the comments. I tested locally and it downloads the chromedriver automatically, and its also undetected. Test it out and let me know |
|
It works, ( undetected False) however it started triggering a few other issues :) inside chrome window: From the python: I'll continue test though :) |
|
I really appreciate your update. It works fine on Windows, but I’m having issues with Linux. When testing using Google Colab, it’s not working as expected. Thanks! ChromeDriver 126.0.6478.126 (d36ace6122e0a59570e258d82441395206d60e1c-refs/branch-heads/6478@{#1591}) |
|
@leaskeg Cheers for helping out! i downloaded your pr, but im still getting errors.
|
|
Hello, i will return to this project tomorrow. Have been busy at work. Will look at all the above issues, and get it updated to the new chrome/python version also. |
- Supports newer Python versions (up to 3.13) - No need for setuptools<59 restriction - Improved proxy handling - Better error handling - More stable driver management - Fixed Linux chromedriver permission issues (chmod 755) - Fixed time module imports for better compatibility - Updated ChromeDriver download mechanism for latest Chrome versions - Improved version detection and compatibility checks - Added better error messages for driver installation - Version updated to 1.8.3 with all fixes included - Reduced config creation wait time from 20s to 10s for better UX - Standardized log message formatting for better readability - Improved cleanup process for graceful program termination - Fixed connection retry errors during driver cleanup - Added proper sleep delays between cleanup operations - Enhanced driver shutdown sequence (close -> quit -> kill) - Improved ad detection and skipping mechanism - Added robust YouTube consent popup handling - Enhanced popup management for better automation reliability - Fixed video playback issues after ad/consent handling - Added Chrome version caching to avoid repeated manual input - Automated Chrome version detection and storage - Improved startup time by saving browser configuration
|
That took way longer than expected. One thing led to another, and I had to redo a lot of the ad/consent detection. Here is the entire overhaul I ended up doing. You'll find the latest commit above this comment (Major Improvements) Version 1.9.0 - Major Improvements and Fixes: Core Functionality:
Driver Management:
Performance & Stability:
YouTube Interaction:
Note: While I've tested these changes extensively on Windows, I haven't been able to test the functionality on macOS/Linux systems. Would appreciate it if someone could verify the macOS/Linux functionality, particularly the ChromeDriver installation and management. (It should download/install automatically once you run the program) All changes have been tested with the latest Chrome and Python 3.x versions. |
90e51ba to
cbf2d77
Compare
|
im sorry but still getting errors on linux And on windows... |
That was to be expected since i did most the linux stuff based on a previous project i worked on. I will look into it! If you have any other errors let me know also. |





Summary
This pull request addresses an issues where the repo is not working anymore. Tested locally and it works for me as it did before.
Changes
loggingPrefscapability from the WebDriver initialization since it was causing an issue with the new version.loggingPrefscapability was causing aninvalid argument: unrecognized capabilityerror. Removing this capability resolves the issue and allows multiple workers to initialize correctly.Testing
I think thats pretty much it. Works like before - tested with proxies from webshare
Please review and merge this to fix the application