Решил научиться делать парсер, но столкнулся с такой проблемой как авторизация. На ютубе просмотрел кучу видео, но так и не нашёл решение для своей проблемы. Проблема в том что когда отправляю гет запрос, то приходит странный html код, хотя статус код 200. Когда пытаюсь найти любой тег, то суп его просто не видет или его нет. Пик 1 мой код и пик 2 html который я получаю. Хочу понять в чем проблема и как решить
бамп
>>6348
А как мне получить не js а html? На странице через инспектор кода вижу тег input, а когда применяю метод find() не находит ни тег input ни любой другой тег
А как мне получить не js а html? На странице через инспектор кода вижу тег input, а когда применяю метод find() не находит ни тег input ни любой другой тег
>>6354
Там скорее всего динамическая генерация хтмл на клиенте. Возможно какой-то фронтенд фреймворк юзается.
Там скорее всего динамическая генерация хтмл на клиенте. Возможно какой-то фронтенд фреймворк юзается.
>>6356
На клиенте авторизация должна как-то закрепиться, например записью в куке. Даже если авторизация выполняется каждый раз при первом входе на ресурс - что-то да появится на клиенте, вроде токена, который нужно приклеивать к дальнейшим запросам.
Что же касается респонса на втором пике - возможно там и js как server-side-render, но тогда в теле ответа будет json с нужными тебе данными. Крч, парсить будешь не api, не html, а json, что пришел вместе с хуйней со второго пика.
На клиенте авторизация должна как-то закрепиться, например записью в куке. Даже если авторизация выполняется каждый раз при первом входе на ресурс - что-то да появится на клиенте, вроде токена, который нужно приклеивать к дальнейшим запросам.
Что же касается респонса на втором пике - возможно там и js как server-side-render, но тогда в теле ответа будет json с нужными тебе данными. Крч, парсить будешь не api, не html, а json, что пришел вместе с хуйней со второго пика.
>>6337 (OP)
Бля, если ты такие тупорылые вопросы задаешь, мол что мне делать с аутентификацией - то тебе beautiful soup противопоказан. Ты до него ещё не дорос. Возьми что попроще - puppeteer например или playwright. Или на худой конец селениум. Если ты не знаешь что такое csrf токен, то и нахуй ты лезешь в то, во что ты не понимаешь?
Бля, если ты такие тупорылые вопросы задаешь, мол что мне делать с аутентификацией - то тебе beautiful soup противопоказан. Ты до него ещё не дорос. Возьми что попроще - puppeteer например или playwright. Или на худой конец селениум. Если ты не знаешь что такое csrf токен, то и нахуй ты лезешь в то, во что ты не понимаешь?
Оп, так как ты делаешь, в теории можно залогиниться, но это очень геморно
Я пришел к библиотеке selenium, но сука на сайтах с хорошей защитой селениум как то палится и программа не работает
Я пришел к библиотеке selenium, но сука на сайтах с хорошей защитой селениум как то палится и программа не работает
В связи с чем вопрос
Мне нужно автоматизировать действия в браузере
Какую технологию для этого изучить, чтобы она не палилась одним крупным сайтом? Ткните носом плс
Мне нужно автоматизировать действия в браузере
Какую технологию для этого изучить, чтобы она не палилась одним крупным сайтом? Ткните носом плс
>>6434
Или как скрыть действие хромдрайвера? Я юзаю selenium-stealth, но рабочей машине почему то не подменяется web-gl, я думаю из за этого сайт меня палит.
Как вот подменить эту хуйню или более элегантно скрыть работу хромдрайвера?
Понимаю что мне вряд ли ответят, но я не опускаю руки. Просто я даже не знаю, где спросить. Может анон подкажет какой нибудь форум или чат, где я смогу поинтересоваться
мне очень интересно выполнить кое какую задачу, это в теории может принести бабки. я столько всего узнал за последние несколько недель в плане питона, селениума, фингерпринтов, вот этого всего. хотелось бы уже решить задачу залогина, как опу и писать программу дальше. дальше уже и обезьяна справится
Или как скрыть действие хромдрайвера? Я юзаю selenium-stealth, но рабочей машине почему то не подменяется web-gl, я думаю из за этого сайт меня палит.
Как вот подменить эту хуйню или более элегантно скрыть работу хромдрайвера?
Понимаю что мне вряд ли ответят, но я не опускаю руки. Просто я даже не знаю, где спросить. Может анон подкажет какой нибудь форум или чат, где я смогу поинтересоваться
мне очень интересно выполнить кое какую задачу, это в теории может принести бабки. я столько всего узнал за последние несколько недель в плане питона, селениума, фингерпринтов, вот этого всего. хотелось бы уже решить задачу залогина, как опу и писать программу дальше. дальше уже и обезьяна справится
>>6435
забей на селениум. юзай дефолтную либу запросов, парсить изи можно через регулярки \ хпат \ жсон (зависит от содержания ответа) . Если тебя на запросах палит сайт, то дело в составлении самих запросов \ проксях
забей на селениум. юзай дефолтную либу запросов, парсить изи можно через регулярки \ хпат \ жсон (зависит от содержания ответа) . Если тебя на запросах палит сайт, то дело в составлении самих запросов \ проксях
>>6436
Мне нужно именно логиниться, нажимать на кнопки, короче мне нужно именно вводить данные, а не парсить. Автоматизировать надо другими словами
Разве можно с помощью реквестов это сделать?
Мне нужно именно логиниться, нажимать на кнопки, короче мне нужно именно вводить данные, а не парсить. Автоматизировать надо другими словами
Разве можно с помощью реквестов это сделать?
>>6437
Конечно можно. Ты вообще понимаешь суть реквестов? Это отдельный протокол, в том же браузере ты аналогично делаешь кучу запросов при совершении любых действий на сайте. Создаешь сессию, чтоб куки сохранялись и делаешь логин, далее уже парси, что хочешь
Конечно можно. Ты вообще понимаешь суть реквестов? Это отдельный протокол, в том же браузере ты аналогично делаешь кучу запросов при совершении любых действий на сайте. Создаешь сессию, чтоб куки сохранялись и делаешь логин, далее уже парси, что хочешь
>>6439
Дело в том, что реквестами надо отправлять всю форму, а это не просто логин и пароль, но и всякие токены, js скрипты, не понятно откуда это всё берется и как это подставлять в запрос
Мне нужно просто взять логин и пароль, вставить их в поле формы и нажать кнопку input
Дело в том, что реквестами надо отправлять всю форму, а это не просто логин и пароль, но и всякие токены, js скрипты, не понятно откуда это всё берется и как это подставлять в запрос
Мне нужно просто взять логин и пароль, вставить их в поле формы и нажать кнопку input
>>6440
Все там просто отправляется. Установи софт для снифа запросов, вроде барпа или фидлера. Настрой его и отснифай все что нужно. Потом, если в запросе на логин есть разные токены, то поищи их в других запросах. Как заполняется форма - чекай доки либы реквестов, там все изи, 3 типа контент тайпа
Все там просто отправляется. Установи софт для снифа запросов, вроде барпа или фидлера. Настрой его и отснифай все что нужно. Потом, если в запросе на логин есть разные токены, то поищи их в других запросах. Как заполняется форма - чекай доки либы реквестов, там все изи, 3 типа контент тайпа
>>6443
Популярная, т.к. это прямая эмуляция браузера. Обывателю проще по кнопкам с координатами тыкать, чем разбираться в работе хттп протокола (запросах)
Популярная, т.к. это прямая эмуляция браузера. Обывателю проще по кнопкам с координатами тыкать, чем разбираться в работе хттп протокола (запросах)
>>6444
Дело не в чеке конкретной либы. Ты при работе с селениумом - тоже делаешь запросы, как и при посещении любого сайта через браузер или мобильной прилы. На запросах ты можешь регнуть акк на сайте, условно, за пару секунд и потратишь на это пару кб на прокси. На вебе ты буш регать акк секунд, допустим, 30 и потратишь мб 10 от прокси трафика. Все защиты обходятся.
Дело не в чеке конкретной либы. Ты при работе с селениумом - тоже делаешь запросы, как и при посещении любого сайта через браузер или мобильной прилы. На запросах ты можешь регнуть акк на сайте, условно, за пару секунд и потратишь на это пару кб на прокси. На вебе ты буш регать акк секунд, допустим, 30 и потратишь мб 10 от прокси трафика. Все защиты обходятся.
Понятно
Просто не хотелось бы потратить месяц на изучение реквеста, а его по итогу так же задетектит сайт
На самом деле изучать там очень много, особенно мне не понятна тема с токенами при логине
Просто селен реально проще и если есть варик обойти защиту под селениум, то я бы с удовольствием обошел под селениумом
Мб ты знаешь куда копать?
а если нет, то придется учить реквест, ниче не остается
Просто не хотелось бы потратить месяц на изучение реквеста, а его по итогу так же задетектит сайт
На самом деле изучать там очень много, особенно мне не понятна тема с токенами при логине
>Все защиты обходятся
Просто селен реально проще и если есть варик обойти защиту под селениум, то я бы с удовольствием обошел под селениумом
Мб ты знаешь куда копать?
а если нет, то придется учить реквест, ниче не остается
>>6447
Не, не работал ни разу с селениумом. Онли запросы. Если тебя интересует автоматизация сайтов/ прил, то это нужно учить запросы. Да и учатся они точно не за месяц, гораздо быстрее. Короче, не трать время на селениум и подобные веб костыли, на запросах ты получишь скорость и точность.
Не, не работал ни разу с селениумом. Онли запросы. Если тебя интересует автоматизация сайтов/ прил, то это нужно учить запросы. Да и учатся они точно не за месяц, гораздо быстрее. Короче, не трать время на селениум и подобные веб костыли, на запросах ты получишь скорость и точность.
>>6447
Чел, если ты не занимаешься разработкой в постоянку, а хочешь только спарсить какой-то сайт, то у меня для тебя плохие новости - ты угробишь 9000 своего времени на это всё с минимальным выхлопом. Заебёшься сам, заебешь анонов вопросами, заебёшь сайт своим детским парсингом.
Найди себе уже разраба и работайте с ним над этой проблемой. Если нет денег на разраба, то не еби мозги и найди себе нормальную работу - в инете без денег мало что можно.
>На самом деле изучать там очень много
Чел, если ты не занимаешься разработкой в постоянку, а хочешь только спарсить какой-то сайт, то у меня для тебя плохие новости - ты угробишь 9000 своего времени на это всё с минимальным выхлопом. Заебёшься сам, заебешь анонов вопросами, заебёшь сайт своим детским парсингом.
Найди себе уже разраба и работайте с ним над этой проблемой. Если нет денег на разраба, то не еби мозги и найди себе нормальную работу - в инете без денег мало что можно.
233 Кб, 959x950
>>6441
Блять, этот сайт понимает что я его снифаю и просто не грузится
Я ебал блять
Я не знаю уже че делать
Проблемы просто реально на каждом шагу
>вроде барпа
Блять, этот сайт понимает что я его снифаю и просто не грузится
Я ебал блять
Я не знаю уже че делать
Проблемы просто реально на каждом шагу
>>6773
Твоя хрень точно на таких же технологиях работает. Ничего не изменится.
Твоя хрень точно на таких же технологиях работает. Ничего не изменится.
>>6337 (OP)
Попробуй скопируй из браузера заголовки, ресурс не только по user-agent может определять действительно ли ты с браузера.
Плюс, для питона, я уверен на %146, уже есть готовые либы, которые помогают маскировать запросы под юзера, обмазывая нужными заголовками.
Плюс, контент твоего сайта можешь грузиться через js, в таком случае ты его не увидишь через обычный get запрос.
Попробуй скопируй из браузера заголовки, ресурс не только по user-agent может определять действительно ли ты с браузера.
Плюс, для питона, я уверен на %146, уже есть готовые либы, которые помогают маскировать запросы под юзера, обмазывая нужными заголовками.
Плюс, контент твоего сайта можешь грузиться через js, в таком случае ты его не увидишь через обычный get запрос.
>>6337 (OP)
Судя по мусору в названиях классов в коде, этот сайт на реакте или ему подобном петушином JS-фреймворке сделан. Соответственно гет-запросом ты вытягиваешь JS, которым вся эта петушатня отрисовывается в браузере.
Посмотри есть ли он в кеше гугла. Если есть - значит используется пререндер и поисковым ботам отдается готовая статичная страница. В таком случае можно попробовать сменить юзер-агент на гуглбота и попробовать парсить статику.
>kijiji.ca
Судя по мусору в названиях классов в коде, этот сайт на реакте или ему подобном петушином JS-фреймворке сделан. Соответственно гет-запросом ты вытягиваешь JS, которым вся эта петушатня отрисовывается в браузере.
Посмотри есть ли он в кеше гугла. Если есть - значит используется пререндер и поисковым ботам отдается готовая статичная страница. В таком случае можно попробовать сменить юзер-агент на гуглбота и попробовать парсить статику.
18 Кб, 725x84
>>6790
Судя по тому какую ты хуйню щас написал, от разработки ты далек, но пытаешься определять какие технологии петушиные а какие, что выдает недалёкого человека в принципе.
Обфусцированный реакт палится легко, а тут типичная дрисня из jquery+bootstrap из нулевых.
Судя по тому какую ты хуйню щас написал, от разработки ты далек, но пытаешься определять какие технологии петушиные а какие, что выдает недалёкого человека в принципе.
Обфусцированный реакт палится легко, а тут типичная дрисня из jquery+bootstrap из нулевых.
>>6791
/static/ и мусор в названиях классов ни на что не намекает? То, что сюда еще и бутстрап подключили не отменяет того, что работает все на каком-то новомодном JS-фреймворке для петушониксов.
/static/ и мусор в названиях классов ни на что не намекает? То, что сюда еще и бутстрап подключили не отменяет того, что работает все на каком-то новомодном JS-фреймворке для петушониксов.
>>6433
вроде там можно настроить, чтобы когда отправляешь запрос там не было инфы про то что запрос из селениума, а заменить на какой нибудь фаерфокс и версию указать, это можно легко найти у всех браузеров есть свои версии и они как то по особенному написаны, честно несколько лет уже не занимался этим и всё позабыл, хотя в своё время парсил/скрэпил очень много сайтов в том числе booking.com, запомнился потому что дрочево лютое было и заказчик сам не знал чего хотел, но были и другие сайты абсолюнто разные с разными защитами, обычно если защиты меньше то парсер пишется быстро и собирает инфу быстро, а если там какая то защита то всё становилось дольше, по моему селениум я использовал в крайних случаях, по сути он как бы открывает окно браузера и выполняет команды из кода, так ведь? а то забыл уже все названия, но вроде эта штука называлась селениум, грубо говоря браузер работающий из кода
Кстати там вроде есть возможность убрать так сказать графическую часть браузера, чтобы он выполнял свою функцию но на экране не отображался грубо говоря
так что бро там можно настроить тип браузера который запрашивает страницу сайта, поищи инфу
вроде там можно настроить, чтобы когда отправляешь запрос там не было инфы про то что запрос из селениума, а заменить на какой нибудь фаерфокс и версию указать, это можно легко найти у всех браузеров есть свои версии и они как то по особенному написаны, честно несколько лет уже не занимался этим и всё позабыл, хотя в своё время парсил/скрэпил очень много сайтов в том числе booking.com, запомнился потому что дрочево лютое было и заказчик сам не знал чего хотел, но были и другие сайты абсолюнто разные с разными защитами, обычно если защиты меньше то парсер пишется быстро и собирает инфу быстро, а если там какая то защита то всё становилось дольше, по моему селениум я использовал в крайних случаях, по сути он как бы открывает окно браузера и выполняет команды из кода, так ведь? а то забыл уже все названия, но вроде эта штука называлась селениум, грубо говоря браузер работающий из кода
Кстати там вроде есть возможность убрать так сказать графическую часть браузера, чтобы он выполнял свою функцию но на экране не отображался грубо говоря
так что бро там можно настроить тип браузера который запрашивает страницу сайта, поищи инфу
>>6448
Селениум не нужен, учи запросы. Они быстрее и точнее.
Селениум не нужен, учи запросы. Они быстрее и точнее.