Criar contas do Gmail manualmente pode ser entediante, especialmente se você precisar de várias contas para testes ou outros fins. Neste tutorial, você aprenderá como automatizar o processo de registro de conta do Gmail usando Python e Selênio. Também usaremos o falsificador
biblioteca para gerar dados aleatórios do usuário e aleatório
para geração de senha.
Pré-requisitos
Antes de começarmos, certifique-se de ter o seguinte instalado:
- Python 3.x
- Selênio
- Chrome WebDriver
- Falsificador
Você pode instalar Selenium e Faker usando pip:
pip instalar selênio faker
Baixe o Chrome WebDriver em aqui e certifique-se de que esteja no seu PATH.
Visão geral do roteiro
O roteiro irá:
- Gere nome, sobrenome, nome de usuário e senha aleatórios.
- Abra a página de inscrição do Gmail usando Selenium.
- Preencha o formulário de inscrição com os dados gerados.
- Envie o formulário.
Etapa 1: importar bibliotecas e inicializar o Faker
Primeiro, importaremos as bibliotecas necessárias e inicializaremos Falsificador
:
de selenium importar webdriver de selenium.webdriver.common.by importar Por de selenium.webdriver.support.ui importar WebDriverWait de selenium.webdriver.support importar condições_esperadas como EC de faker importar Faker importar importação aleatória string import time # Inicializar Faker fake = Faker ()
Etapa 2: gerar dados aleatórios
A seguir, criaremos uma função para gerar uma senha aleatória e gerar os dados aleatórios do usuário:
# Função para gerar uma senha aleatória def generate_password(length=12): caracteres = string.ascii_letters + string.digits + string.punctuation password = ''.join(random.choice(characters) for i in range(length)) return senha # Gerar dados aleatórios do usuário first_name = fake.first_name() last_name = fake.last_name() nome de usuário = first_name.lower() + last_name.lower() + str(random.randint(1000, 9999)) password = generate_password()
Etapa 3: inicializar o Selenium WebDriver
Inicialize o Chrome WebDriver e navegue até a página de inscrição do Gmail:
# Inicialize o driver do Chrome WebDriver = webdriver.Chrome() # Abra a página de inscrição do Gmail driver.get("https://accounts.Google.com/signup")
Etapa 4: preencha o formulário de inscrição
Aguarde o carregamento da página, localize os campos do formulário e preencha-os com os dados gerados:
# Aguarde o carregamento da página e localize os campos do formulário wait = WebDriverWait(driver, 10) first_name_field = wait.until(EC.presence_of_element_located((By.ID, "firstName"))) last_name_field = driver.find_element(By.ID , "lastName") username_field = driver.find_element(By.ID, "username") password_field = driver.find_element(By.NAME, "Passwd") confirm_password_field = driver.find_element(By.NAME, "ConfirmPasswd") # Preencha os campos do formulário first_name_field.send_keys(first_name) last_name_field.send_keys(last_name) username_field.send_keys(username) password_field.send_keys(password) confirm_password_field.send_keys(password)
Etapa 5: enviar o formulário
Envie o formulário e adicione um atraso para permitir o carregamento da próxima página:
# Envie o formulário next_button = driver.find_element(By.XPATH, '//*[@id="accountDetailsNext"]/div/button') next_button.click() # Adicione um atraso para permitir o carregamento da próxima página (você pode ser necessário ajustar o tempo de sono) time.sleep(5)
Etapa 6: lidar com etapas adicionais
Dependendo do processo de inscrição do Google, pode ser necessário executar etapas adicionais, como verificação por telefone, e-mail de recuperação ou CAPTCHA. Esta parte irá variar e pode exigir um manuseio mais avançado.
Etapa 7: feche o navegador
Feche o navegador assim que o processo for concluído:
# Fecha o navegador após a conclusão do processo driver.quit() # Produz os dados gerados print(f"Nome: {primeiro_nome}") print(f"Sobrenome: {sobrenome}") print(f"Nome de usuário: { nome de usuário}") print(f"Senha: {senha}")
Roteiro Completo
Aqui está o script completo combinando todas as etapas:
de selenium importar webdriver de selenium.webdriver.common.by importar Por de selenium.webdriver.support.ui importar WebDriverWait de selenium.webdriver.support importar condições_esperadas como EC de faker importar Faker importar importação aleatória string import time # Inicializar Faker fake = Faker () Função # para gerar uma senha aleatória def generate_password(comprimento=12): caracteres = string.ascii_letters + string.digits + string.punctuation senha = ''.join(random.choice(caracteres) para i no intervalo(comprimento) ) retornar senha # Gerar dados aleatórios do usuário first_name = fake.first_name() last_name = fake.last_name() nome de usuário = first_name.lower() + last_name.lower() + str(random.randint(1000, 9999)) password = generate_password () # Inicializar driver WebDriver do Chrome = webdriver.Chrome() # Abrir página de inscrição do Gmail driver.get("https://accounts.google.com/signup") # Aguarde o carregamento da página e localize os campos do formulário aguarde = WebDriverWait(driver, 10) first_name_field = wait.until(EC.presence_of_element_located((By.ID, "firstName"))) last_name_field = driver.find_element(By.ID, "lastName") username_field = driver.find_element(By.ID , "nome de usuário") password_field = driver.find_element(By.NAME, "Passwd") confirm_password_field = driver.find_element(By.NAME, "ConfirmPasswd") # Preencha os campos do formulário first_name_field.send_keys(first_name) last_name_field.send_keys(last_name ) username_field.send_keys(nome de usuário) password_field.send_keys(senha) confirm_password_field.send_keys(senha) # Envie o formulário next_button = driver.find_element(By.XPATH, '//*[@id="accountDetailsNext"]/div/button' ) next_button.click() # Adicione um atraso para permitir o carregamento da próxima página (pode ser necessário ajustar o tempo de suspensão) time.sleep(5) # Feche o navegador após a conclusão do processo driver.quit() # Produza o dados gerados print(f"Nome: {primeiro_nome}") print(f"Sobrenome: {sobrenome}") print(f"Nome de usuário: {nome de usuário}") print(f"Senha: {senha}")
Conclusão
Você automatizou com sucesso o processo de registro de conta do Gmail usando Python e Selenium. Este script gera dados aleatórios do usuário e preenche o formulário automaticamente. Lembre-se de usar este script com responsabilidade e estar ciente das implicações legais e éticas da automação da criação de contas.