Общение


Пример № 2: автоматизация IE, match, upload по ftp


Следующий пример показывает автоматизацию браузера. Происходящее можно назвать "похищением контента": из Сети закачивается веб-страничка, содержание анализируется на предмет наличия полезных линков, после чего формируется новая страничка, содержащая только интересующую нас информацию. Опционально полученная страничка "поднимается" по ftp на наш сайт.

Хочу подчеркнуть, что это только демонстрация работающей технологии, а не дискуссия по правовым и/или моральным вопросам, таким как порно в Сети, использование "Ad Killers" и чужого контента.

// следующий фрагмент - калька с get 'http://easypic.com/main.html?bypass' // здесь get не работает - из-за перегрузки сервера страница часто // не успевает загрузиться и сеанс обрывается. for j=1,10 { openbrowser 'http://easypic.com/main.html?bypass', '', '', '', '', true every 10 // с периодичностью 10 сек { i=1 getbrowserdata if (contains (., 'EasyPic<sup>TM</sup>')) // первый параметр - вершина стека { break 4 } else { pop i=i+1 if (i>60) // если за 10 мин. не закачалось - начинаем сначала { closebrowser break 3 } } } } closebrowser

// прошу прощения у всех Василиев Пупкиных за использование их несгибаемого трейдмарка create 'C:\index.htm' write '<html><title>Too Easy Pics</title>

<body><FONT face=verdana size=1 color=navy>' write '<center><h3>Vasiliy Pupkin presents: great EasyPic now easier than ever!</h3>' write '<br> To see original EasyPic with counters, banners, links to links, popups ' write 'and other useless stuff click <a href=http://easypic.com>herom</a> <center><br>' match ('<FONT face=verdana color=red size=4>

<B>Webcams</B></FONT>') while (match ('size=4><B>{Title}</B></FONT>')) { write '<center><FONT face=verdana color=red size=3>

<B>{Title}</B></FONT></center><BR>' write '<FONT face=verdana size=1 color=navy>'

// смысл следующих строк - сделать копию контента (остатка), отрезать спереди один раздел, копию // выбросить а сам раздел положить в стек, не факт что все оптимально, главное, что работает push. match '{once} size=4><B>' pop push once

while (match ('<A href={Link}>')) { if (!contains (Link,'traffic.cgi')&&!contains (Link,'cout.cgi')&&!contains (Link,'spotbrokers')) { write "<a href={Link}>XXX</a> " } } pop write '</FONT><BR><BR>' if (Title=='Shemale') { break 2 } } write '</body></html>' close

end // закомментируйте, если хотите выложить результат в Сеть,- только не пишите, что это ваше:\

ftpidentity 'tooeasy','guess' ftpopen 'ftp.narod.ru' ftpput 'C:\index.htm' ftpclose




Начало  Назад  Вперед



Книжный магазин