Как получить html аутентификацию источника после входа в систему - PullRequest
1 голос
/ 01 апреля 2020

Здравствуйте, мне интересно, какую функцию я могу использовать в своем скрипте, чтобы вернуть подтверждение того, что вход в систему работал.

Я использую Selenium, но использую его в режиме без головы. Поэтому я хочу получить вывод auth, который говорит, что вход в систему работал и т. Д. c.

class loginlol:
    def __init__(self, username, password):
        self.browser = webdriver.Chrome()
        self.username = username
        self.password = password
        url = 'https://www.instagram.com/'
        self.driver.find_element_by_xpath("/html/body/div[1]/section/main/article/div[2]/div[1]/div/form/div[2]/div/label/input").click()
        username.send_keys(self.username)
        sleep(1)
        self.driver.find_element_by_xpath("/html/body/div[1]/section/main/article/div[2]/div[1]/div/form/div[3]/div/label/input").click()
        password.send_keys(self.password)
        password.send_keys(Keys.ENTER)
        sleep(1)

что я могу использовать, чтобы напечатать обновленный html, чтобы логин был успешным? атрибут get?

Я пытался подтвердить это с помощью элемента find. но Xpath не работает

        self.driver.findElement("/html/body/div[1]/section/div/div/div[1]/div/p")
        if self.driver.findElement is True:
                print("login confirmed")

, дайте мне знать, что делать, спасибо: D

1 Ответ

1 голос
/ 01 апреля 2020

Если вход выполнен успешно, проверьте свое имя пользователя в page_source

Пример

import time

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


class InstagramBot:
    def __init__(self, email, password):
        self.chrome_browser = webdriver.Chrome()
        self.email = email
        self.password = password

    def login(self):
        self.chrome_browser.get("https://www.instagram.com/accounts/login/")

        time.sleep(2)

        email_input = self.chrome_browser.find_elements_by_css_selector("form input")[0]
        password_input = self.chrome_browser.find_elements_by_css_selector("form input")[1]

        email_input.send_keys(self.email)
        password_input.send_keys(self.password)
        password_input.send_keys(Keys.ENTER)

        time.sleep(2)

        if "my user name" in self.chrome_browser.page_source:
            print("login confirmed")
        else:
            print("login Not confirmed")


my_bot = InstagramBot('0m3r@Email.com', 'password')
my_bot.login()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...