Авторизироваться на другом сайте и выпарсить инфу (на PHP)

12
Rock'n'rolla
На сайте с 14.09.2009
Offline
146
1586

Сабж. Хочу написать скрипт на PHP, который может авторизироваться на другом сайте и выпарсить инфу нужную оттуда.

Со второй частью вроде бы понятно, запихаем все содержимое станицы в переменную и будем потом разбирать по кусочкам и вытаскивать что надо.

Но вот как решить первую часть. Подскажите, в какую сторону хотя бы копать...

Заранее, спасибо большое!

"Vulcan-Bit - лучшая партнерка в сети" (http://vulcan-bit.com?invite=artem_kozirev) KMA.BIZ - Партнерка с крутым конвертом и отчислениями в долларах. Лить! (http://kma.biz)
siv1987
На сайте с 02.04.2009
Offline
427
#1

curl + cookie

Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#2

siv1987, что куки это понятно, ну а поподробнее можно механизм?

Курл не нужен, так как по кнопоке все будет делаться.

Вот например

<?php 

$content = file_get_contents("http://www.site.ru/index.php?r=eqrqfafv");
?>

Но скрипт мне покажет дулю, т.к. чтобы эту страницу смотреть - надо авторизоваться =(

RL
На сайте с 19.06.2013
Offline
19
#3

А какой сайт целевой? — какой там тип авторизации? Есть авторизация через простую форму типа логин/пароль, то нужно отправить POST-запрос на скрипт авторизации с логином и паролем. Только вот как быть с COOKIE авторизации — это уже сложее — врядли получится заставить PHP еще и запоминать/отправлять COOKIE авторизации при каждом запросе.

Можно сделать по другому: пишешь десктопное приложение (программу, короче), например, с помощью NET Framework — там есть готовый движок браузера. Заходишь через это приложение-браузер на сайт, авторизируешься ручками, после чего, например, раз в 10 минут твоя программа-браузер будет обновлять страницу и просто копировать HTML-содержимое либо куда-то на диск C:\file.htm, либо отправлять на твой сервер, где его будет обрабатывать PHP-парсер.

LEOnidUKG
На сайте с 25.11.2006
Offline
1678
#4
Курл не нужен, так как по кнопоке все будет делаться.

Ещё раз: curl + cookie

Если вы это не понимаете, это сугубо ваши проблемы.

✅ Трастовых площадок под размещение статей и ссылок. Опыт 15 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Новый аналог AllSubbmitter (заполнение форм) https://getmanylinks.ru/getmanysubmits.html (Бесплатное демо)
Алексей Барыкин
На сайте с 04.02.2008
Offline
272
#5
Rock'n'rolla:

Курл не нужен, так как по кнопоке все будет делаться.

При чем тут кнопка\не кнопка?

curl тут и нужен, чтобы авторизоваться и вытягивать инфу

Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#6
Есть авторизация через простую форму типа логин/пароль, то нужно отправить POST-запрос на скрипт авторизации с логином и паролем.

Да, такая форма. Отправлю я авторизацию, а дальше что? Поподробнее можете все расписать?

---------- Добавлено 11.12.2013 в 14:40 ----------

При чем тут кнопка\не кнопка?
curl тут и нужен, чтобы авторизоваться и вытягивать инфу

Ок ок, нужен так нужен, но поподробнее можно? Может есть где пример почитать?

RL
На сайте с 19.06.2013
Offline
19
#7
Rock'n'rolla:
Да, такая форма. Отправлю я авторизацию, а дальше что? Поподробнее можете все расписать?

Дальше вам сайт возвращает COOKIE авторизации с идентификатором вашей сессии, которую нужно хранить и отправлять при кажом запросе. Вот как отправлять COOKIE с помощью PHP — я не знаю, боюсь, что это невозможно (могу ошибаться — эксперты подскажут, т.к., я пишу на ASP.NET и с PHP 100 лет дела не имел).

Алексей Барыкин
На сайте с 04.02.2008
Offline
272
#8
Rock'n'rolla:

Ок ок, нужен так нужен, но поподробнее можно? Может есть где пример почитать?

Гуглить "curl php faq manual"

LEOnidUKG
На сайте с 25.11.2006
Offline
1678
#9
Rock'n'rolla:
Ок ок, нужен так нужен, но поподробнее можно? Может есть где пример почитать?

Вот ленивый народ а...

https://www.google.com/search?client=opera&q=PHP+curl+%D0%90%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest&gws_rd=cr&ei=nfURUtJwz47iBO6RgbgL

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий