DavidOB1 / tiktok-meme-bot

A bot that automatically finds memes, edits them into videos, and posts them on TikTok
GNU General Public License v3.0
22 stars 7 forks source link

An error i do not understand #3

Open mamorutakamura opened 1 year ago

mamorutakamura commented 1 year ago

i filled the env template file and renamed it env added a 24min 1920x1080 vid and a 30sec mp3 audio in the file but when i tried running it this error appeared i understand its a bit late but i'd appreciate it if i can get clarification as to why this is happening DevTools listening on ws://127.0.0.1:58686/devtools/browser/b25fe39c-a774-41e0-bbb5-fb7a1a1e5d62 Traceback (most recent call last): File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 129, in tiktok = TikTok( File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 50, in init super().init(options=options) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 70, in init super(WebDriver, self).init(DesiredCapabilities.CHROME['browserName'], "goog", File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\chromium\webdriver.py", line 92, in init RemoteWebDriver.init( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 275, in init self.start_session(capabilities, browser_profile) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 365, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 430, in execute self.error_handler.check_response(response) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 102 Current browser version is 107.0.5304.87 with binary path C:\Program Files (x86)\Google\Chrome\Application\chrome.exe Stacktrace: Backtrace: Ordinal0 [0x003ED953+2414931] Ordinal0 [0x0037F5E1+1963489] Ordinal0 [0x0026C6B8+837304] Ordinal0 [0x0028CAE3+969443] Ordinal0 [0x002886FA+952058] Ordinal0 [0x00285FB1+942001] Ordinal0 [0x002B9100+1151232] Ordinal0 [0x002B8D5A+1150298] Ordinal0 [0x002B42B6+1131190] Ordinal0 [0x0028E860+976992] Ordinal0 [0x0028F756+980822] GetHandleVerifier [0x0065CC62+2510274] GetHandleVerifier [0x0064F760+2455744] GetHandleVerifier [0x0047EABA+551962] GetHandleVerifier [0x0047D916+547446] Ordinal0 [0x00385F3B+1990459] Ordinal0 [0x0038A898+2009240] Ordinal0 [0x0038A985+2009477] Ordinal0 [0x00393AD1+2046673] BaseThreadInitThunk [0x75D3FA29+25] RtlGetAppContainerNamedObjectPath [0x77C87BBE+286] RtlGetAppContainerNamedObjectPath [0x77C87B8E+238]

DavidOB1 commented 1 year ago

Hi, it looks like Chrome driver in the repo is outdated relative to your version of Google Chrome. Check what version of Chrome you have installed, and download the closest version from here: https://chromedriver.storage.googleapis.com/index.html

mamorutakamura commented 1 year ago

Yes, i tried that but now chrome is opening but no action is being performed DevTools listening on ws://127.0.0.1:52115/devtools/browser/9e9d00da-7e71-4f7d-9857-6af12db3dc6a Starting the run loop .... Traceback (most recent call last): File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 136, in tiktok.run() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 100, in run self.upload_meme(self.video_generator.gen_meme_video()) File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\clip_generator.py", line 53, in gen_meme_video meme_name = self.machine.new_meme() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\meme_collecting.py", line 185, in new_meme return self.reddit_meme() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\meme_collecting.py", line 96, in reddit_meme for submission in subreddit: File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\models\listing\generator.py", line 63, in next self._next_batch() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\models\listing\generator.py", line 89, in _next_batch self._listing = self._reddit.get(self.url, params=self.params) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\util\deprecate_args.py", line 43, in wrapped return func(dict(zip(_old_args, args)), kwargs) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\reddit.py", line 634, in get return self._objectify_request(method="GET", params=params, path=path) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\reddit.py", line 739, in _objectify_request self.request( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\util\deprecate_args.py", line 43, in wrapped return func(dict(zip(_old_args, args)), kwargs) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\praw\reddit.py", line 941, in request return self._core.request( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\sessions.py", line 330, in request return self._request_with_retries( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\sessions.py", line 228, in _request_with_retries response, saved_exception = self._make_request( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\sessions.py", line 185, in _make_request response = self._rate_limiter.call( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\rate_limit.py", line 33, in call kwargs["headers"] = set_header_callback() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\sessions.py", line 283, in _set_header_callback self._authorizer.refresh() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\auth.py", line 425, in refresh self._request_token( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\prawcore\auth.py", line 158, in _request_token raise OAuthException( prawcore.exceptions.OAuthException: unauthorized_client error processing request (Only script apps may use password auth)

C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main>[18352:18552:1101/131219.036:ERROR:device_event_log_impl.cc(215)] [13:12:19.035] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: A device attached to the system is not functioning. (0x1F) [18352:18552:1101/131219.038:ERROR:device_event_log_impl.cc(215)] [13:12:19.037] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: A device attached to the system is not functioning. (0x1F)

do you know what might be the reason for this?

mamorutakamura commented 1 year ago

[18352:20404:1101/131315.924:ERROR:util.cc(129)] Can't create base directory: C:\Program Files\Google\GoogleUpdater [9396:13104:1101/131417.205:ERROR:gpu_init.cc(537)] Passthrough is not supported, GL is disabled, ANGLE is this as well

DavidOB1 commented 1 year ago

Hmm, not sure about the first error, found this on stack overflow but I don't know how this would apply here https://stackoverflow.com/questions/64927909/failed-to-read-descriptor-from-node-connection-a-device-attached-to-the-system

The second error might have to do with selenium driver options relating to your graphics card, I'm not sure what exactly would fix those either.

It looks like a lot of the problems are related to Selenium though, which does the automation for the video uploads. If you want to mess around with the video generator, that should still work if you just go to line 128 in tiktok.py and add "video_generator.gen_meme_video()", that will generate a meme video for you before running any of the selenium code.

mamorutakamura commented 1 year ago

that alsi unfortunately did not work.....
DevTools listening on ws://127.0.0.1:53922/devtools/browser/2cab7730-416a-4858-bcf2-1f89267efa16 Starting the run loop .... JSON Query to api/v1/users/web_profile_info/?username=memes,meme.ig,fuckboyproblem.s,memezar,memerats,memelord,pickuplines: 404 Not Found [retrying; skip with ^C] [21728:19732:1102/171035.030:ERROR:device_event_log_impl.cc(215)] [17:10:35.030] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: A device attached to the system is not functioning. (0x1F) JSON Query to api/v1/users/web_profile_info/?username=memes,meme.ig,fuckboyproblem.s,memezar,memerats,memelord,pickuplines: 404 Not Found [retrying; skip with ^C] Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 347, in get_json raise QueryReturnedNotFoundException("404 Not Found") instaloader.exceptions.QueryReturnedNotFoundException: 404 Not Found

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 347, in get_json raise QueryReturnedNotFoundException("404 Not Found") instaloader.exceptions.QueryReturnedNotFoundException: 404 Not Found

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 347, in get_json raise QueryReturnedNotFoundException("404 Not Found") instaloader.exceptions.QueryReturnedNotFoundException: 404 Not Found

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\structures.py", line 767, in _obtain_metadata metadata = self._context.get_iphone_json(f'api/v1/users/web_profile_info/?username={self.username}', File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 488, in get_iphone_json return self.get_json(path, params, 'i.instagram.com', tempsession) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 394, in get_json return self.get_json(path=path, params=params, host=host, session=sess, _attempt=_attempt + 1) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 394, in get_json return self.get_json(path=path, params=params, host=host, session=sess, _attempt=_attempt + 1) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\instaloadercontext.py", line 382, in get_json raise QueryReturnedNotFoundException(error_string) from err instaloader.exceptions.QueryReturnedNotFoundException: JSON Query to api/v1/users/web_profile_info/?username=memes,meme.ig,fuckboyproblem.s,memezar,memerats,memelord,pickuplines: 404 Not Found

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 136, in tiktok.run() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\tiktok_bot.py", line 100, in run self.upload_meme(self.video_generator.gen_meme_video()) File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\clip_generator.py", line 53, in gen_meme_video meme_name = self.machine.new_meme() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\meme_collecting.py", line 189, in new_meme return self.insta_meme() File "C:\Users\user\OneDrive\Desktop\tiktok-meme-bot-main\meme_collecting.py", line 145, in insta_meme profile = Profile.from_username(insta.context, prof_choice) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\structures.py", line 698, in from_username profile._obtain_metadata() # to raise ProfileNotExistsException now in case username is invalid File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\instaloader\structures.py", line 784, in _obtain_metadata raise ProfileNotExistsException('Profile {} does not exist.'.format(self.username)) from err instaloader.exceptions.ProfileNotExistsException: Profile memes,meme.ig,fuckboyproblem.s,memezar,memerats,memelord,pickuplines does not exist.

DavidOB1 commented 1 year ago

Hi sorry for the delay in replying, this might be an issue with Instaloader since I think the library is somewhat outdate. It also looks like based on the last line it didn't split the profiles correctly and was trying to search for instagram accounts all with the combined names, make sure in your env file to put spaces between the commas (like, this, for, example). I honestly haven't touched this project in a while so there might be issues with the libraries, I'll definitely go back and take a look to see if certain things have been deprecated.

SellersEvan commented 5 months ago

I have started a break-off of this project with completely, re-written code. It doesn't support auto uploading videos but the codebase has been extremely refined and I hope to add more features in the future. Feel free to check it out and contribute. https://github.com/sellersindustry/tiktok-meme-bot