среда, 29 июля 2009 г.

Управление IE из PHP

Давно я хотел это вынести в паблик, но что-то не было времени. Сейчас появилось немножко времени.

Что представляет собой скрипт?!
  1. Работает только под виндой, где установлен IE
  2. Это «обертка» для управления браузером, с возможностью, смены прокси, юзерагента, очистки кук и кеша.
  3. Дает полный доступ к DOM страницы. AJAX не преграда. ;)
  4. Подходит для быстрого написания регалок.
  5. Использование форфри как всегда, но от пару баксов на пиво не откажусь – Z288932678182.
Первым у нас идет базовый класс самого браузера с примером использования: файл 1 из архива.

Ну, и чтобы это у вас заработало, класс dom: файл 2 из архива.

Ну, и напоследок — замечательный класс для дебага, который мне сразу генерил код для регалки: файл 3 из архива.


Автор: SeoCoder.

Комментарии:

resident 07.29.09 at 09:03
Пишет ошибку: Fatal error: Class ‘anchors’ not found in Z:\home\test2.ru\www\dom.php on line 14
Де взять этот класс?

SeoCoder 07.29.09 at 09:04
ааа. ну это можно отключить.
там еще много классов.
$this->anchors = new anchors();
$this->input = new input();
$this->select = new select();
$this->textarea = new textarea();
$this->radiobutton = new radiobutton();
$this->images = new images();
$this->debug = new debug();
вот это заремарить.

shuppe 07.29.09 at 09:22
известная прога Xedant Human Emulator работает по тому же принципу. но стоит дорого.
напишите свой аналог, наверняка найдутся покупатели

mescalito 07.29.09 at 09:25
бесплатный аналог хеданта что-ли?

SeoCoder 07.29.09 at 10:27
угу

Благодарный 07.29.09 at 11:17
еще бы полностью рабочий пример увидеть

SeoCoder 07.29.09 at 11:21
90% рабочего кода тут представлено.

Кодер 07.29.09 at 14:05
Спасибо, отличная инфа. Работает, только есть пара вопросов.
Как дебаг сделать?
$yaru->sink->dom->debug не работает(
И как скрпиты то быстро писать?) Или вся фишка в том, что нужно просто в ручную забивать названия кнопок и т.п. (кст, доп классы все таки было бы полезны) и скрпит будет это выполнять.

SeoCoder 07.29.09 at 14:37
вот пример одного из классов https://yadi.sk/i/THy3bIPq3KztBT
остальное пишется также по аналогии

SideWinder 08.03.09 at 08:42
Спасибо. Только собрался нечто подобное написать )

Vera 08.09.09 at 12:45
SideWinder ну и как успехи написал?

Fantom 08.12.09 at 12:50
Всегда поражали такие люди когда свои хорошие наработки в паблик выкладывают совершенно безвозмездно. Спасибо бро…

renault 08.12.09 at 15:16
Спасибо огромное. Действительно очень полезная штука

JackSoft 08.12.09 at 16:45
Еще зимой накидал схожый класс, а потом ушел на HtmlUnit. Причина – не смог дать фокус окну, открываемому яваскриптом, например вставка html-кода в TinyME редакторе. У тебя получилось бегать по потомкам? В принципе если интересно – стукни в аську на блоге – пообщаемся.

SeoCoder 08.12.09 at 16:53
tinymce легко
стучи в аську – покажу

SeoCoder 08.12.09 at 16:57
Ладно, покажу тут ;)
$this->browser->document->getElementById(‘txt_msg_ifr’)->contentWindow->document->body->innerHTML = $this->getposttext();

JackSoft 08.12.09 at 17:12
Ты бы асю засветил :)

JackSoft 08.12.09 at 17:20
Еще вопрос по клику на таких батонах был:
Save your profile

JackSoft 08.12.09 at 17:21
Save your profile

JackSoft 08.12.09 at 17:22
не вставляется :)
почисти.
моя ася 4443б588 (б – это шесть ;)

JackSoft 08.12.09 at 18:00
Про клик не актуально – посмотрел твои примеры – разобрался – респект.
Еще вспомнил :)
Сохранение картинки в файл для отправки антикапча сервисам ;)
Неужели тоже поможеш? ;)

Enyusha 08.15.09 at 11:51
Классная тема. Вот бы еще разобратся может кто поможет.

skyman 08.24.09 at 10:17
Какие плюсы и минусы такого способа написания регалок, кроме простоты написания?

Bambino 09.04.09 at 11:31
Че-то я не врубил как працює. :) Попробовал выполнить эмуляцию регистрации на сайте. Что за параметр $class, который нужно передатьв debug->analyze?

Leonida 09.24.09 at 13:27
Тема действительно хороша, также нужно разбираться.

sergsam1 12.08.09 at 03:37
Ну вот я запустил это дело, выскочило окно ya.ru а дальше что делать?

Макс 09.27.10 at 19:06
Seocoder, слушай, у меня тут такой вопрос встал :) Даже два:
1. Можешь скинуть ссылки на документацию о объекту COM IE.
2. Мне нужно, чтобы задавался Referer. Решил вписать в хедерах, но вот фигня в том, что JS не выводит его. Вот собственно как указать referer для JavaScript?




Другие посты по этой теме:



Комментариев нет: