Ответы пользователя по тегу Веб-разработка
  • Как авторизироваться на сайте через скрипт?

    qlkvg
    @qlkvg
    python backend developer
    Куки - меньшая из проблем. Любая вменяемая библиотека для работы с http умеет их держать в течение сессии, сохранять по окончании и загружать позже. Веселье начинается со всякими xsrf и прочими защитами. Пробуйте, материалов в интернетах тонна. Для примера на python+requests - https://www.youtube.com/watch?v=eRSJSKG4mDA.
    Ответ написан
    Комментировать
  • Как создать иммитацию действий бота, заполнения формы?

    qlkvg
    @qlkvg
    python backend developer
    1. Никакой проблемы в нескольких потоках создавать несколько драйверов нет. Если умеешь в многопоточность как концепцию, конечно.
    2. PhantomJS работает без гуя и требует относительно мало ресурсов - в этом его преимущество. В headless mode умеет еще geckodriver (firefox), но он более прожорливый. Зато можно всегда этот headless mode отключить и посмотреть, что происходит.
    3. В целом все это работает примерно так: ваша программа -> библиотека selenium -> selenium server(открывается на локалхосте) -> драйвер браузера -> браузер. Соответственно язык может быть любой из тех, для которых есть библиотека, а браузер любой из тех, для которых написан драйвер.
    Ответ написан
    Комментировать
  • Как на python3 и requests заполнить форму и отправить на сервер (Уже авторизован и получил куки)?

    qlkvg
    @qlkvg
    python backend developer
    1. посмотреть в браузере в консоли разработчика, что происходит при отправке формы. скорее всего там будет POST-запрос с кучей параметров.
    2. Повторить это запрос с помощью requests. что-то около того
    session.headers.update({"request_header1": "request_value1"})
    params = {"param1": "value1"}
    session.post("https://site.com", data=params)

    В общем случае так, но всегда есть ньюансы. Где-то нужно найти и передать crsf-токен, где-то в точности повторить content-type передаваемых параметров etc
    Ответ написан
    5 комментариев
  • Requests Python 3, парсинг страницы. Почему не возвращает таблицу?

    qlkvg
    @qlkvg
    python backend developer
    Таблица рисуется не статически, а в результате ajax-запросов. Если не нужна высокая скорость, можно взять selenium и не париться - он отрендерит страницу, а дальше любым способом можно будет спарсить необходимые данные. Если время критично/ресурсов мало/хочется прокачать скилл - то надо смотреть в консоли разработчика во вкладке network, что вообще происходит со страницей при загрузке и как формируется таблица.
    Ответ написан
    5 комментариев