Ir para conteúdo
Fórum Script Brasil

Zoik

Membros
  • Total de itens

    5
  • Registro em

  • Última visita

Posts postados por Zoik

  1. Clica naquela ferramenta de configurações pequena no lado do terminal e assinala a opção emulate terminal in output console e testa para ver se ainda tá dando o erro, se não der certo tenta mudar o interprete um pouco mais pra cima em "python interpreter", isso resolveu pra mim.

  2. Estou editando essa script que encontrei em um canal no youtube para ela curtir fotos no automático, ela funciona tudo, vai até o post que eu quero e abre a imagem, passa imagem por imagem porem não curte a foto e o erro está aqui até onde eu sei... 

    driver.find_element_by_xpath('//button[@class="dCJp8 afkep"]').click()
    time.sleep(random.randint(19, 23))
    

    Não consigo fazer ele clicar no botão para curtir esse é o unico erro, sou novo em python e agradeceria muito se alguém pudesse me ajudar a passar esse obstáculo.

    SCRIPT INTEIRA

    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    import random
    
    
    class InstagramBot:
        def __init__(self, username, password):
            self.username = username
            self.password = password
            self.driver = webdriver.Firefox(
                executable_path=r"C:\\Users\\alexs\\Desktop\bot\\driver\\geckodriver.exe"
            )  # Coloque o caminho para o seu geckodriver aqui
    
        def login(self):
            driver = self.driver
            driver.get("https://www.instagram.com")
            time.sleep(3)
            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()
            time.sleep(random.randint(4, 6))
            user_element.send_keys(self.username)
            time.sleep(random.randint(4, 6))
            password_element = driver.find_element_by_xpath(
                "//input[@name='password']")
            password_element.clear()
            password_element.send_keys(self.password)
            time.sleep(random.randint(4, 6))
            password_element.send_keys(Keys.RETURN)
            time.sleep(random.randint(4, 6))
            self.curtir_fotos_com_a_hastag(
                "programação"
            )  # Altere aqui para a hashtag que você deseja usar.
    
        @staticmethod
        def type_like_a_person(sentence, single_input_field):
            """ Este código irá basicamente permitir que você simule a digitação como uma pessoa """
            print("going to start typing message into message share text area")
            for letter in sentence:
                single_input_field.send_keys(letter)
                time.sleep(random.randint(1, 5) / 30)
    
        def curtir_fotos_com_a_hastag(self, hashtag):
            driver = self.driver
            driver.get("https://www.instagram.com/explore/tags/" + hashtag + "/")
            time.sleep(5)
            for i in range(
                1, 3
            ):  # Altere o segundo valor aqui para que ele desça a quantidade de páginas que você quiser: quer que ele desça 5 páginas então você deve alterar de range(1,3) para range(1,5)
                driver.execute_script(
                    "window.scrollTo(0, document.body.scrollHeight);")
                time.sleep(3)
            hrefs = driver.find_elements_by_tag_name("a")
            pic_hrefs = [elem.get_attribute("href") for elem in hrefs]
            print(hashtag + " fotos: " + str(len(pic_hrefs)))
            testes = [
                href
                for href in pic_hrefs
                if hashtag in href and href.index("https://www.instagram.com/p") != -1
            ]
    
            for pic_href in pic_hrefs:
                try:
                    pic_href.index("https://www.instagram.com/p")
                except ValueError as err:
                    print("pulando link inválido")
                    continue
                driver.get(pic_href)
                driver.execute_script(
                    "window.scrollTo(0, document.body.scrollHeight);")
                try:
                    driver.find_element_by_xpath('//button[@class="dCJp8 afkep"]').click()
                    time.sleep(random.randint(19, 23))
                except Exception as e:
                    print(e)
                    time.sleep(5)
    
    
    jhonatanBot = InstagramBot(
        "login", "senha"
    )  # Entre com o usuário e senha aqui
    jhonatanBot.login()
    
  3. Em 31/01/2021 em 11:39, ArteEN disse:

    tira a primeira linha e deixa só a que tem os dois \\, eu coloquei a primeira linha para dizer qual que você tinha que mexer, desculpe se não fui claro

    Continua dando erro amigo, não sei mais o que fazer mas agradeço muito pela ajuda, se tiver mais alguma sugestão de como corrigir sempre será bem vinda!

    ERRO:

    Traceback (most recent call last):
      File "c:\Users\alexs\Desktop\bot\tempCodeRunnerFile.py", line 1, in <module>
        from selenium import webdriver
      File "C:\Users\alexs\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\__init__.py", line 18, in <module>
        from .firefox.webdriver import WebDriver as Firefox  # noqa
      File "C:\Users\alexs\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 104, in <module>
        jhonatanBot = InstagramBot("13123123", "123123123")
      File "C:\Users\alexs\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 13, in __init__
        firefoxProfile = webdriver.FirefoxProfile()
    AttributeError: partially initialized module 'selenium.webdriver' has no attribute 'FirefoxProfile' (most likely due to a circular import)
  4. Olá estou tentando usar esses comandos para abrir o navegador e assim dar inicio a uma série de ações nele, um código simples porém toda vez que tento executar a script ele dá erro, segui os passos de um canal no youtube executando primeiro o comando pip install selenium, depois preparei o VS CODE criando a pasta com o arquivo "chomedriver.exe", segui todos os passos certinho e várias pessoas disseram que deu certo, na verdade quase todos mas eu quando tento executar o comando ele da esse erro e já tentei de tudo mas ele não abre o navegador, se alguém puder me ajudar serei grato, possuo muita dificuldade com esse código e já estou a dias tentando resolver todos os possíveis erros e não consigo!

    SCRIPT:

    from selenium import webdriver
    driver = webdriver.Chrome('C:\Users\alexs\Desktop\IgBot\chomedriver.exe')
    driver.get("http://www.google.com")

    ERRO

    File "c:\Users\alexs\Desktop\IgBot\tempCodeRunnerFile.py", line 2
        driver = webdriver.Chrome('C:\Users\alexs\Desktop\IgBot\chomedriver.exe')
                                                                                
    SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape    
     
×
×
  • Criar Novo...