• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 🚨 29 мая стартует курс «Пентест Active Directory: от теории к практике» от Академии Кодебай

    🔍 Изучите реальные техники атак на инфраструктуру Active Directory: от первоначального доступа до полной компрометации.
    🛠️ Освойте инструменты, такие как BloodHound, Mimikatz, CrackMapExec и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальные сценарии атак.
    🧠 Получите знания, которые помогут вам стать востребованным специалистом в области информационной безопасности.

    После старта курса запись открыта еще 10 дней Подробнее о курсе ...

Авторизация на сайте ( Python )

Ymacker

New member
06.03.2019
0
0
Начинаю пытаться питонить и парсить. Сразу полез в прикладную часть. Выбрал регистратора доменов и попытался спарсить дропов, воткнулся сразу же, прямо на этапе авторизации.
Python:
from selenium import webdriver
chromedriver ='D:\python\chromedriver.exe'
browser= webdriver.Chrome(chromedriver)
browser.get('https://member.expireddomains.net/domains/expiredru/?o=changes&r=d#listing')
login=browser.find_element_by_id('inputLogin')
password=browser.find_element_by_id('inputPassword')
login.send_keys('Login')
password.send_keys('Password')
Login.click()
Поля ввода login/pass он нашёл правильно, а вот кликать по логину не хочет, видимо, надо задавать как-то явно. Попытался решить ректально-орально через pyAutoGui эмуляцией нажатия Enter, взбрыкнул браузер (как я понял).
Подскажите, как правильно указать кнопку login селениуму.
 
Начинаю пытаться питонить и парсить. Сразу полез в прикладную часть. Выбрал регистратора доменов и попытался спарсить дропов, воткнулся сразу же, прямо на этапе авторизации.
Python:
from selenium import webdriver
chromedriver ='D:\python\chromedriver.exe'
browser= webdriver.Chrome(chromedriver)
browser.get('https://member.expireddomains.net/domains/expiredru/?o=changes&r=d#listing')
login=browser.find_element_by_id('inputLogin')
password=browser.find_element_by_id('inputPassword')
login.send_keys('Login')
password.send_keys('Password')
Login.click()
Поля ввода login/pass он нашёл правильно, а вот кликать по логину не хочет, видимо, надо задавать как-то явно. Попытался решить ректально-орально через pyAutoGui эмуляцией нажатия Enter, взбрыкнул браузер (как я понял).
Подскажите, как правильно указать кнопку login селениуму.
Вариантов нажатия на кнопку там очень много. Попробуй найти её id через
Python:
    element = driver.find_element_by_id("login")   
    element.click()
Или через
Python:
driver.find_element_by_xpath('//div[@id="login"]')
element.click()

В любом случае, открываешь DevTols в Chrome, там Elements и ищешь нужный элемент
 
Вариантов нажатия на кнопку там очень много. Попробуй найти её id через
Python:
    element = driver.find_element_by_id("login")
    element.click()
Или через
Python:
driver.find_element_by_xpath('//div[@id="login"]')
element.click()

В любом случае, открываешь DevTols в Chrome, там Elements и ищешь нужный элемент

Так и делал, dev'ом глянул какой CSS селектор у кнопки, воткнул на место и..... отработано без ошибок, но пользователь не авторизовался (((. Т.е. страница авторизации пропадает, меня перекидывает на главную, но вход в пользовательскую не выполняется.
Либо я туплю ( что вероятнее всего), либо сайт палит парсер.

Код:
from selenium import webdriver
chromedriver ='D:\python\chromedriver.exe'
browser= webdriver.Chrome(chromedriver)
browser.get('https://member.expireddomains.net/domains/expiredru/?o=changes&r=d#listing')
login=browser.find_element_by_id('inputLogin')
password=browser.find_element_by_id('inputPassword')
sleep=5
login.send_keys('login')
password.send_keys('Password')
element = browser.find_element_by_css_selector('button.btn.btn-default')
element.click()
 
Последнее редактирование:
Так и делал, dev'ом глянул какой CSS селектор у кнопки, воткнул на место и..... отработано без ошибок, но пользователь не авторизовался (((. Т.е. страница авторизации пропадает, меня перекидывает на главную, но вход в пользовательскую не выполняется.
Либо я туплю ( что вероятнее всего), либо сайт палит парсер.

Код:
from selenium import webdriver
chromedriver ='D:\python\chromedriver.exe'
browser= webdriver.Chrome(chromedriver)
browser.get('https://member.expireddomains.net/domains/expiredru/?o=changes&r=d#listing')
login=browser.find_element_by_id('inputLogin')
password=browser.find_element_by_id('inputPassword')
sleep=5
login.send_keys('login')
password.send_keys('Password')
element = browser.find_element_by_css_selector('button.btn.btn-default')
element.click()
Посмотри, какие данные передаются в запросе, какие передаются cookies.
Потом добавь их в запрос
browser.add_cookie({'name' : 'region', 'value' : 'ru'})

Установи fake_useragent для python
python -m pip install fake_useragent
в коде добавь случайный UserAgent
Python:
from fake_useragent import UserAgent

ua = UserAgent()
opts = Options()
opts.add_argument("user-agent=" + ua.google)
d = DesiredCapabilities.CHROME
d['goog:loggingPrefs'] = { 'browser':'ALL' }
browser= webdriver.Chrome(chromedriver, desired_capabilities=d, options=opts)
 
Подскажите, плееез =)
Начал код писать
from selenium import webdriver

# Указываем полный путь к geckodriver.exe на вашем ПК.
browser = webdriver.Firefox()
browser.get("Красное Солнце - Плотная зига écouter gratuitement en ligne via Musique VK")
login = browser.find_element_by_id('quick_email')
login.send_keys('логин')
passwd = browser.find_element_by_id('quick_pass')
passwd.send_keys('пароль')
k=browser.find_element_by_id('quick_login_button')
k.click()
a=browser.find_element_by_class('AudioPlaylistSnippet__play')
a.click()

все работает, но не нажимает на запуск плейлиста.
пишет ошибку AttributeError: 'WebDriver' object has no attribute 'find_element_by_class'

Код кнопки на фото
 

Вложения

  • 1.JPG
    1.JPG
    27,8 КБ · Просмотры: 248
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

Курс AD