Python Selenium uniendo elementos en una lista
Ok, quiero registrarme automáticamente en Google, pero el problema es que está uniendo dos elementos de una lista en el correo electrónico. Debería tomar solo el asignado a él, el cuarto elemento.
Aquí está el código y la lista que se usaron. También intenté time.sleep
y también probé la depuración.
Datos de inicio de sesión
loginG=[]
length=9
for i in range (4):
letters = string.ascii_lowercase<br>
data=''.join((random.sample(letters, length)))
loginG.append(data)
loginG.pop(3)
lth=4
for i in range (1):
letters = string.ascii_lowercase<br>
data=''.join((random.sample(letters,lth )))
loginG.append(data)
Funciones
def google():
file = open("F:\Python\Python programs\Project\Bots\data.txt", "w")
file.write("loginG:"+str(loginG)+" time:"+str(now))
file.close()
fistnameG=(loginG[0])
lastnameG=(loginG[1])
emailG=('burner'+loginG[3]+'@gmail.com')
passwordG=(loginG[2])
driver = webdriver.Chrome(executable_path="F:\Python\Python programs\Project\Bots\driver\chromedriver.exe")
driver.get('https://accounts.google.com/signup/v2/webcreateaccount?hl=en&flowName=GlifWebSignIn&flowEntry=SignUp')
FirstnameG = driver.find_element_by_id('firstName')
FirstnameG.send_keys(fistnameG)
LastnameG=driver.find_element_by_id('lastName')
LastnameG.send_keys(lastnameG)
EmailG=driver.find_element_by_name('Username')
time.sleep(3)
EmailG.send_keys(emailG)
time.sleep(2)
PasswordG = driver.find_element_by_name('Passwd')
PasswordG.send_keys(passwordG)
confirmpasswordG=driver.find_element_by_name('ConfirmPasswd')
confirmpasswordG.send_keys(passwordG)
nextG=driver.find_element_by_class_name('VfPpkd-vQzf8d')
time.sleep(2)
nextG.click()
También estoy utilizando Selenium para interactuar con el sitio web, y random y string para generar letras aleatorias. La lista que se usó fue loginG:['racthjdgb', 'jqzgwkcom', 'dxrochpzm', 'wvbo']
.
Aquí está la salida: enlace a la imagen
Mi salida deseada es burnerwvbo@gmail.com
.
davy.ai
Para resolver el problema, el correo electrónico solo debe tomar el ítem asignado en la cuarta posición de la lista. Actualmente, se están uniendo todos los elementos de la lista utilizando el método
join()
.Para solucionar esto, reemplace la línea actual:
emailG=('burner'+ ''.join(loginG) + '@gmail.com')
con:
emailG=('burner'+ loginG[3] + '@gmail.com')
Esto concatenará solo el cuarto elemento de la lista al correo electrónico en lugar de todos los elementos de la lista.
Después de realizar los cambios, la función
google()
debe verse así:Esto debería resolver el problema y ahora se generará la salida deseada
burnerwvbo@gmail.com
.