Как извлечь данные из сайта, где нужно вводить пароль, а внутренние страницы имеют один url на всех, запуская скрипт на сервере CentOS без GUI?
Есть сайт первая страница которого требует логин и пароль (эти данные есть), далее идут страницы из части которых требуется извлечь данные, но все эти страницы имеют один и тот же url, как это сделать?
Я с селениум сталкивался, про headless режим не слышал, можно где-то почитать, как его с python делать (гуглил до того как задать вопрос - нашел что-то не то)? И реально ли сделать все это на scrappy?
ArtiomK, странно вы с selenium сталкивались, что про headless не слышали. Scrapy, как и bs4 по сути просто с html кодом страницы работают. Загружайте страницу с Selenium, получайте html код нужного элемента main = driver.find_element(By.CLASS_NAME, "main").get_attribute('innerHTML'), скармливайте его scrapy и делайте что хотите.
Владимир Куц, я сейчас пытаюсь с помощью selenium хотя бы зайти на сайт https://video.mosreg.ru/admin/#no-back-button , там динамически меняется xpath, selector, name, id, можно как-то зайти в этом случае? Устроился на первую работу программистом, оказалось, что я тут единственный программист (думаю есть еще и другие, так как компания большая, но я с ними не пересекаюсь никак), спросить не у кого, приходится мучать форумы.
import os
from selenium import webdriver
driver_path = os.path.join("C:\\", "Users", "kozyrev.av", "Desktop", "chromedriver_win32", "chromedriver.exe")
options = webdriver.ChromeOptions()
options.add_argument('window-size=2028x900')
browser = webdriver.Chrome(executable_path=driver_path, options=options)
browser.get("https://video.mosreg.ru/admin/#no-back-button")
# поиск по id
browser.find_element_by_id("oknzyun").send_keys("123") # input поле логина
browser.find_element_by_id("oknzyus").send_keys("123") # input поле пароля
browser.find_element_by_id("oknzyv4").click() #
ArtiomK, хоть-бы про xpath прочитали. Вы привязываетесь к id, а они меняются каждый раз, xpath динамично меняться не может. В вашем случае нужен именно xpath. К примеру:
xpath формы логина: