Ir ao conteúdo
  • Cadastre-se

Python Executar codico selenium ( webdriver) sem abrir a interface


Posts recomendados

Pessoal existe alguma maneira de executar esse código 
"por baixo dos panos" sem abrir o navegador? 
Apenas Abrindo o CMD.

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import random


comments = ['teste']



class InstagramBot:
    def __init__(self, username, password):
        self.username = username
        self.password = password
        self.driver =  webdriver.Chrome(executable_path="C:\chromedriver_win32\chromedriver.exe")
    
    

    def login(self):
        driver = self.driver
        driver.get("https://www.instagram.com")
        time.sleep(2)
        driver.maximize_window()
        time.sleep(2)
        try:
            login_button = driver.find_element_by_xpath(
                "//a[@href='/accounts/login/?source=auth_switcher']"
            )
            login_button.click()
        except:
            print('já estamos na página de login')
            pass
        user_element = driver.find_element_by_xpath(
            "//input[@name='username']")
        user_element.clear()
        user_element.send_keys(self.username)
        password_element = driver.find_element_by_xpath(
            "//input[@name='password']")
        password_element.clear()
        password_element.send_keys(self.password)
        password_element.send_keys(Keys.RETURN)

        time.sleep(2)
        driver.get('link para comentar')
        time.sleep(2)
        commentArea = driver.find_element_by_class_name('Ypffh')
        commentArea.click()
        time.sleep(1)
        comment = driver.find_element_by_xpath('//*[@id="react-root"]/section/main/div/div[1]/article/div[3]/section[3]/div/form/textarea').send_keys(random.choice(comments))
        time.sleep(3)
        print('Comentario realizado com sucesso!')








bot = InstagramBot('user', 'pass')
bot.login()
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

Eu não usei muito o Selenium, mas tem uma opção "headless" com esse código:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')

browser = webdriver.Chrome(chrome_options=chrome_options, executable_path="./chromedriver")

Eu não consigo testar aqui por alguns fatores, mas você pode tentar aí (lembrando que essas opções são pro WebDriver do Chrome, mas outros navegadores devem ter suas próprias opções).

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...