From b657f07b9a47ccee795a72ec070bf2f6586756d8 Mon Sep 17 00:00:00 2001 From: McSon2 Date: Thu, 16 Jan 2025 09:37:58 +0100 Subject: [PATCH] Enhance Twitter bot interaction by improving tweet button selection logic. Added multiple methods to locate the tweet button, ensuring robustness against changes in the Twitter UI. --- src/classes/Twitter.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/classes/Twitter.py b/src/classes/Twitter.py index 020122f..b7ea58f 100644 --- a/src/classes/Twitter.py +++ b/src/classes/Twitter.py @@ -97,7 +97,18 @@ def post(self, text: str = None) -> None: time.sleep(1) bot.find_element(By.CLASS_NAME, "notranslate").send_keys(keys.Keys.ENTER) - bot.find_element(By.XPATH, "//div[@data-testid='tweetButton']").click() + try: + # Essayer d'abord avec la classe CSS spécifique + tweet_button = bot.find_element(By.CSS_SELECTOR, "span.css-1jxf684[role='button']") + except: + try: + # Si ça ne marche pas, essayer avec le texte exact + tweet_button = bot.find_element(By.XPATH, "//span[contains(@class, 'css-1jxf684') and text()='Poster']") + except: + # En dernier recours, chercher n'importe quel élément contenant le texte "Poster" + tweet_button = bot.find_element(By.XPATH, "//*[text()='Poster']") + + tweet_button.click() if verbose: print(colored(" => Pressed [ENTER] Button on Twitter..", "blue"))