Sie konnten sich jetzt nicht anmelden. Bitte versuchen Sie es später noch einmal. g;176029661079788808:-1760296618459:ijH33i79n7aS6in2duZpcYni:1
Es spielt keine Rolle, welchen Benutzernamen ich (Selenium) eingebe.
Ich verwende Selenium in zwei verschiedenen Skripten und es passiert bei beiden.
wenn ich es versuche Beim Anmelden über den „normalen“ Chrome-Browser mit denselben Benutzernamen tritt kein Fehler auf.
Dies ist der Code, den ich zum Anmelden verwende:
Code: Select all
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import config
class TweeterChromeConnector:
def __init__(self):
# open chrome
self.driver = webdriver.Chrome()
self.driver.get("https://x.com/i/flow/login")
self.wait = WebDriverWait(self.driver, 20)
def login(self, user_name, password):
try:
# send user
span_element = self.wait.until(
EC.presence_of_element_located((By.XPATH, "//span[text()='Phone, email address, or username']")))
input_element = span_element.find_element(By.XPATH, "./ancestor::div[contains(@class, 'r-')]/following::input")
input_element.send_keys(user_name)
# press Next
span_element = self.driver.find_element(By.XPATH, "//span[text()='Next']")
button_element = span_element.find_element(By.XPATH, "./ancestor::span[contains(@class, 'r-')]")
button_element.click()
# handle password
span_element = self.wait.until(EC.presence_of_element_located((By.XPATH, "//span[text()='Password']")))
input_element = span_element.find_element(By.XPATH, "./ancestor::div[contains(@class, 'r-')]/following::input")
input_element.send_keys(password)
# click login
span_element = self.wait.until(EC.presence_of_element_located((By.XPATH, "//span[text()='Log in']")))
button_element = span_element.find_element(By.XPATH, "./ancestor::span[contains(@class, 'r-')]")
button_element.click()
except Exception as e:
print(f"An error occurred during login: {e}")
raise
def paste_content(self, input_element, content):
self.driver.execute_script(
f'''
const text = `{content}`;
const dataTransfer = new DataTransfer();
dataTransfer.setData('text', text);
const event = new ClipboardEvent('paste', {{
clipboardData: dataTransfer,
bubbles: true
}});
arguments[0].dispatchEvent(event)
''', input_element)
Mobile version