python script öffnet browser nicht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
stefan1212
User
Beiträge: 9
Registriert: Sonntag 7. Februar 2021, 14:43

Hey!
Ich habe hier einen Bot für Insta angefangen zu schreiben, aber wenn ich ihn starte, passiert nichts nichtmal der browser öffnet sich, hat jemand eine Idee woran das liegt?
Danke



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
from selenium.webdriver.common.keys import Keys
import time


class Instagrambot():
def _init_(self, username,password):
self.username = username
self.password = password

self.browser = webdriver.Chrome("./chromedriver.exe")

def WaitForObject(self, type, string):
return WebDriverWait(self.browser,3).until(EC.presence_of_element_located((type,string)))

def WaitForObjects(self, type, string):
return WebDriverWait(self.browser,3).until(EC.presence_of_all_elements_located((type,string)))

def login(self):
self.browser.get("https://www.Instagram.com/")


Bot = Fremdgehenbot("TEST, TEST")

Bot.login()
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Die Einrückungen stimmen nicht. _init__ wird __init__ geschrieben. Und letztlich ist Fremdgehenbot nirgends definiert.

Code: Alles auswählen

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
from selenium.webdriver.common.keys import Keys
import time


class Instagrambot():
    def __init_(self, username, password):
        self.username = username
        self.password = password

        self.browser = webdriver.Chrome("./chromedriver.exe")

    def WaitForObject(self, type, string):
        return WebDriverWait(self.browser,3).until(EC.presence_of_element_located((type,string)))

    def WaitForObjects(self, type, string):
        return WebDriverWait(self.browser,3).until(EC.presence_of_all_elements_located((type,string)))

    def login(self):
        self.browser.get("https://www.Instagram.com/")

def main():
    bot = Instagrambot("TEST", "TEST")
    bot.login()

if __name__ == "__main__":
    main()
stefan1212
User
Beiträge: 9
Registriert: Sonntag 7. Februar 2021, 14:43

Hallo, sirius3
Ich danke dir für die hilfe!
Ich habe deinen code benutzt und bekomme folgende meldung im terminal.


PS C:\Users\User\Desktop\Fremdgehenbot> python bot.py
Traceback (most recent call last):
File "C:\Users\User\Desktop\Fremdgehenbot\bot.py", line 30, in <module>
main()
File "C:\Users\User\Desktop\Fremdgehenbot\bot.py", line 26, in main
bot = Instagrambot("TEST", "TEST")
TypeError: Instagrambot() takes no arguments
PS C:\Users\User\Desktop\Fremdgehenbot>
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Na, da hab ich halt auch noch den _ am Ende übersehen: __init__
stefan1212
User
Beiträge: 9
Registriert: Sonntag 7. Februar 2021, 14:43

Den hatte ich hinzugefügt, und dann gestartet dann kam die Meldung
Benutzeravatar
Dennis89
User
Beiträge: 1123
Registriert: Freitag 11. Dezember 2020, 15:13

Hallo @stefan1212 Du hast aus

Code: Alles auswählen

def __init_(self, username, password):
diese Codezeile gemacht

Code: Alles auswählen

def __init__(self, username, password):
?

Bei mir kommt deine Fehlermeldung nach der Änderung von '_' in '__' nämlich nicht mehr.


Grüße
Dennis
"When I got the music, I got a place to go" [Rancid, 1993]
Antworten