|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
||||||
Не получается авторизоваться через парсер на своем же сайте24.11.2019, 14:47. Показов 1747. Ответов 11
Метки нет (Все метки)
Всем привет.
Заинтересовала тема парсинга информации, решил потренироваться на своем же сайте. Итак, я точно знаю какие переменные и куда отправляются у меня при авторизации. При авторизации ссылка "Вход" превращается в "Личный кабинет". Вот код:
Скажите пожалуйста, что не так делаю? Добавлено через 1 минуту Еще немного не понятен момент с cookie.txt, этот файл автоматически не создается. Создал его в корне сайта, он всё равно всегда пустой, т.е. запись в него информации не производится.
0
|
||||||
| 24.11.2019, 14:47 | |
|
Ответы с готовыми решениями:
11
Не получается авторизоваться на сайте Не получается авторизоваться на сайте cURL
|
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
|
| 24.11.2019, 15:05 | |
|
Зачем на 18 строке меняете URL? Он уже на 12 задан.
0
|
|
|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
|
| 24.11.2019, 15:20 [ТС] | |
|
Jodah, получается так: если 18 строку убираю, то в cookie.txt записывается кука, а на экране json ответ сервера. Затем строку 18 возвращаю и тогда страница открывается авторизованного пользователя. Куку убираю, снова страница открывается неавторизованного пользователя.
Т.е. если нет строки 18, то авторизация происходит, но страница не открывается. Если строка есть, то страница открывается, но неавторизованная. Тёмный лес как авторизоваться и открыть страницу тут же после авторизации.
0
|
|
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
|
| 24.11.2019, 15:22 | |
|
Lion_astana, если надо после авторизации сделать ещё один запрос на главную - сделайте ещё один запрос на главную. У вас же 2 запроса сейчас в коде, значит надо третий добавить. Только CURLOPT_COOKIEJAR + CURLOPT_COOKIEFILE не забыть.
0
|
|
|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
|
| 24.11.2019, 15:28 [ТС] | |
|
Jodah, простите не понял, только начинаю это осваивать. Сможете показать после чего это прописать и как?
Добавлено через 2 минуты Я как понял именно 18 строка как бы и говорит что после получения кук открыть именно целевую страницу.
0
|
|
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
|||||||
| 24.11.2019, 15:30 | |||||||
|
Lion_astana, у вас первый запрос на 7-10 строках, второй на 12-21, теперь надо добавить третий, который будет идентичен первому, только с куками.
Добавлено через 2 минуты Упрощённо, вы пытаетесь сделать так:
0
|
|||||||
|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
||||||||||||||||
| 24.11.2019, 15:52 [ТС] | ||||||||||||||||
|
С упрощенным примером всё понятно )))
Я просто не до конца понимаю именно кукиджар и кукифайл. Почему 13 и 14 строка идет до отправки запроса в 16 строке? И если данные записали и кука получена, почему при моем прописывании адреса в 18 строке они не считываются? Что-то мозг кипит! Добавлено через 5 минут А, понял, сделал так:
Открыть страницу с авторизацией на своем сайте получилось. Теперь смотрю на сайт, с которого нужно спарсить данные. Когда авторизируюсь на свое сайте и смотрю через Хром, то вижу Form Data, в котором вижу переменные которые летят при запросе. Проверяю на нужном сайте, там нет пункта Form Data во вкладке Headers, а есть пункт Request Payload и две переменные, но в скобках {}, типа это массив. Как тогда быть мне с пунктом:
Если убираю строки 21 и 22, то вижу ответ сервера на мой такой запрос: {"error":"Ошибка при заполнении формы"} Как правильно отправить данные? Отправяемые данные верны, у меня есть аккаунт на нужном мне сайте и авторизируюсь с ними через форму нормально, да и в Хроме при отправке формы вижу данные которые летят, их всего две переменных.
0
|
||||||||||||||||
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
|
| 24.11.2019, 15:57 | |
|
Lion_astana, не сталкивался, но гугл говорит, что вроде бы надо просто данные в json формате передавать.
https://www.nulled.cc/threads/264520/ https://stackoverflow.com/ques... st-payload
1
|
|
|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
||||||||||||||||
| 24.11.2019, 19:33 [ТС] | ||||||||||||||||
|
Jodah, спасибо за помощь!
Добавлено через 1 час 42 минуты Позвольте вопрос по парсингу инфы на нужной странице: На странице есть такой элемент:
Делаю так:
Пробовал так:
Сможет кто-нибудь помочь с регуляркой?
0
|
||||||||||||||||
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
||
| 24.11.2019, 19:43 | ||
|
Lion_astana, для поиска по html предпочитаю библиотеку DiDom.
0
|
||
|
16 / 16 / 8
Регистрация: 15.03.2010
Сообщений: 321
|
||||||
| 24.11.2019, 19:59 [ТС] | ||||||
|
Да в том и дело, что именно эту ссылку не найдёшь быстро по ID, так как его нет. А ссылок на странице сотни.
У меня есть вариант сначала вытащить все ссылки на странице, точнее их атрибут href, затем перебрать циклом и найти ту, которая содержит подстроку ?utm_source=xxx.ru Мне кажется что это долго и много букв кода. Требуется найти в тексте регуляркой подстроку из неизвестного количества любых символов между <a href=" и ?utm_source=xxx.ru, вот это строгое условие. Не могу понять как! Добавлено через 2 минуты При том похожее условие для поиска содержимого элемента span, внутри которого есть email отрабатывает на ура:
Или если проще сформулировать задачу, то нужен первый результат поиска атрибута href элемента a, который в коце содержит символы ?utm_source=xxx.ru.
0
|
||||||
|
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
|
||||||
| 24.11.2019, 20:31 | ||||||
|
Lion_astana,
https://github.com/Imangazalie... in-element
0
|
||||||
| 24.11.2019, 20:31 | |
|
Помогаю со студенческими работами здесь
12
Авторизоваться на сайте через WebBrowser и работать на нем через WebClient
Не получается авторизоваться через POST-запрос Как программно авторизоваться на сайте через форму авторизации? Авторизоваться на сайте, используя WebBrowser, через свою форму с логином и паролем Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|