EpicNet.Ru - Форум IRC Чата

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Extracting data from a web page / Извлечение данных с веб-страницы


Extracting data from a web page / Извлечение данных с веб-страницы

Сообщений 1 страница 2 из 2

1

Привет Epic! Я также изменил это, но он работает только с id = 1 или id = 2 и т.д. Идея та же, с этим сценарием, если я смогу привести сайты моей страны. Но это должно работать так, как вы это сделали в первую очередь. Я не знаю, какая разница существует, но эта страна получает данные из моей страны.

Код:
ON *:TEXT:!newsany*:#: {
  if ($2 == $null) { .msg $chan The correct type is  !newsany  | return }
  sockget http://any_web_site_com= $+ $2 $nick $chan
}
alias sockget {
  if (!$1-) { echo -ag ERROR: Enter the URL Page correctly! | return }
  var %s = sockget_ $+ $rand(1,100000) $+ _ $+ $ticks
  if ($sock(%s)) { sockclose %s }
  var %site = $1
  var %get_host = $chr(47) $+ $gettok(%site,3-,47)
  var %host = $gettok(%site,2,47)
  if ($right(%site,1) == $chr(47)) && ($right(%get_host,1) !== $chr(47)) { var %get_host = %get_host $+ $chr(47) }
  if (*https* iswm %site) { sockopen -e %s %host 443 }
  else { sockopen %s %host 80 }
  sockmark %s %get_host $iif($2-,$2-)
}
ON *:SOCKOPEN:sockget_*: {
  if ($sockerr) { echo -ag ERROR: SOCKOPEN -> $sock($sockname).wserr -> $sock($sockname).wsmsg | return }
  sockwrite -nt $sockname GET $gettok($sock($sockname).mark,1,32) HTTP/1.0
  sockwrite -n $sockname Host: $sock($sockname).addr
  sockwrite -n $sockname User-Agent: */*
  sockwrite -n $sockname Connection: Close
  sockwrite -nt $sockname $crlf
}
ON *:SOCKREAD:sockget_*: {
  if ($sockerr) { echo -ag ERROR: SOCKREAD -> $sock($sockname).wserr -> $sock($sockname).wsmsg | return }
  var %read
  sockread %read
  if ($sockbr) { 
    ; echo -ag DATA: $left(%read,4096)
    if (<p> isin %read) && (</p> isin %read) {
      .msg $gettok($sock($sockname).mark,3,32) [ $+ $gettok($sock($sockname).mark,2,32) $+ ]: $iif($remove(%read,<p>,</p>),$v1,Not any results founded)
    }
  }
}
ON *:SOCKCLOSE:sockget_*: { ;echo -ag CLOSED: $sock($sockname).addr SOCKET CONNNECTION! }   

2

Уточните пожалуйста, какие сайты вы используете для этого скрипта и что он в итоге должен отображать на канале, на котором был сделан запрос через команду "!newsany" ?

Примечание: Подобные скрипты не являются универсальными и они не могут одинаково работать с разными веб-ссылками, т.к. каждый сайт или веб-страница могут иметь свою гипертекстовую разметку HTML, состоящую из разных тегов, идентификаторов и классов. В большинстве случаев под каждый новый сайт вам придётся создавать новый отдельный подобный скрипт, а иногда даже и переделывать его, из-за разных новых изменений в разметке сайта и его страницах. Кроме того некоторые сайты запрещают и блокируют возможность ботам бесплатно извлекать (парсить) страницы с необходимой информацией и требуют для этого использовать специальное API, которое иногда можно получить только за деньги и на ограниченный лимитированный срок. В этом случае подобные скрипты могут оказаться бесполезными, если вы конечно не найдёте какой нибудь обходной путь.

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Extracting data from a web page / Извлечение данных с веб-страницы