Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Взаимодействие со страницами из скрипта 
V
    Опции темы
progbeg
Дата 24.4.2007, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 11.7.2006

Репутация: нет
Всего: нет



Меня интересует, возможно ли из php-скрипта воздействовать на удалённую страницу? То есть я обращаюсь к страничке, мне из неё нужно выдернуть некоторую информацию, но не всю. А какую именно - определяется через выбор, например, чекбоксов. Возможно ли как-то "отметить" нужные флажки из скрипта?
PM MAIL   Вверх
mishaSL
Дата 24.4.2007, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54



Не совсем понятно что у вас не получается, если как взять удаленный файл, то можно через сокеты или через curl 

Или что у вас не получается?


--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
woin
Дата 24.4.2007, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 15.4.2007

Репутация: нет
Всего: нет



может. можно выдёргивать любую информацию. можно отправлять запросы форм как это делал бы пользователь на страничке.
PM MAIL   Вверх
progbeg
Дата 24.4.2007, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 11.7.2006

Репутация: нет
Всего: нет



Цитата(mishaSL @  24.4.2007,  15:26 Найти цитируемый пост)
Не совсем понятно что у вас не получается, если как взять удаленный файл, то можно через сокеты или через curl

Нет, меня интересует, могу ли я из скрипта производить те же действия, что производит пользователь на сайте - то есть нажимает кнопки, делает выбор из списка, выбирает чекбоксы и т.п.

woin, спасибо, только хотелось немного поконкретнее smile пример, если можно
PM MAIL   Вверх
CyClon
Дата 24.4.2007, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



Алгоритм для осуществления сабжа:
1. Делаем страничку HTML с флажками, которая отправляет данные в скрипт
2. Обрабатываем в скрипте данные флажков
3. Коннектимся к хосту. Можно тупо юзать file_get_contents, но на много правильнее будет юзать curl или, если его нет, fsockopen.
4. Забираем старничку в переменную
5. Выбираем данные с помощью preg_match / preg_match_all или вырезаем ненужные с помощью preg_replace

Добавлено через 2 минуты и 51 секунду
Цитата
Нет, меня интересует, могу ли я из скрипта производить те же действия, что производит пользователь на сайте - то есть нажимает кнопки, делает выбор из списка, выбирает чекбоксы и т.п.


Проделывать эти действия скрипт не сможет, а вот получить такой же результат как юзер сможет. То есть, отмеченный флажок в браузере - это лишняя GET/POST переменная. Ты их выбираешь, ничего не происходит. Когда ты нажимаешь кнопку отправить - генерируется запрос и отправляется браузером. Так вот эти запросы можно отправлять и скриптом.

Посмотреть, какие запросы отправляет твой браузер, можно, например, с помощью браузера Mozilla Firefox + Tamper Data Plugin.

Добавлено через 8 минут и 47 секунд
SAMPLE:

Когда я пишу в своем Mozilla Firefox 2.0.0.3 "google.com" и нажимаю ENTER, посылается такой запрос:

Цитата
16:46:52.109[500мс][всего 500мс] Статус: 301[Moved Permanently]
GET http://google.com/ Флаги загрузки[LOAD_DOCUMENT_URI  LOAD_INITIAL_DOCUMENT_URI  ] Размер содержимого[-1] Тип Mime[text/html]
   Заголовки запроса:
      Host[google.com]
      User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3]
      Accept[text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5]
      Accept-Language[ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3]
      Accept-Encoding[gzip,deflate]
      Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7]
      Keep-Alive[300]
      Proxy-Connection[keep-alive]
      Cookie[PREF=ID=e9cf9ae306db191f:TM=1176036062:LM=1176036062:S=PWQJmrmnrFLINNA-]
   Заголовки ответа:
      Location[http://www.google.com/]
      Set-Cookie[PREF=ID=e9cf9ae306db191f:TM=1176036062:LM=1176036062:S=PWQJmrmnrFLINNA-; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com]
      Content-Type[text/html]
      Server[GWS/2.1]
      Transfer-Encoding[chunked]
      Content-Encoding[gzip]
      Date[Tue, 24 Apr 2007 12:46:27 GMT]
      Cache-Control[private, x-gzip-ok=""]
      Connection[keep-alive]


Когда я уже на страничке, вписываю в поле запроса слово "MyQuery" и нажимаю "Поиск", мой браузер отправляет следующий запрос:

Цитата
16:47:05.890[594мс][всего 735мс] Статус: 200[OK]
GET http://www.google.com/search?hl=ru&q=M...+Google&lr= Флаги загрузки[LOAD_DOCUMENT_URI  LOAD_INITIAL_DOCUMENT_URI  ] Размер содержимого[-1] Тип Mime[text/html]
   Заголовки запроса:
      Host[www.google.com]
      User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3]
      Accept[text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5]
      Accept-Language[ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3]
      Accept-Encoding[gzip,deflate]
      Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7]
      Keep-Alive[300]
      Proxy-Connection[keep-alive]
      Referer[http://www.google.com/]
      Cookie[PREF=ID=e9cf9ae306db191f:TM=1176036062:LM=1176036062:S=PWQJmrmnrFLINNA-; adsenseReferralClickId=; adsenseReferralSubId=; adsenseReferralSourceId=]
   Заголовки ответа:
      Cache-Control[private]
      Content-Type[text/html; charset=UTF-8]
      Server[GWS/2.1]
      Transfer-Encoding[chunked]
      Content-Encoding[gzip]
      Date[Tue, 24 Apr 2007 12:46:41 GMT]
      Connection[keep-alive]



--------------------
user posted image
PM   Вверх
progbeg
Дата 24.4.2007, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 11.7.2006

Репутация: нет
Всего: нет



CyClon, отлично, спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0458 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.