Форум сетевых администраторов
Показаны 11 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- PHP (http://netadmin.ws/forum/forumdisplay.php?forumid=6)
-- Как читать html таблицу& (http://netadmin.ws/forum/showthread.php?threadid=5566)


Помещено Sergey_pol 21-05-2003 в 00:54:

Как читать html таблицу&

Помогите пожалуйста прочитать некоторые ячейцки html таблицы. Есть постоянная генерируемая чужим скриптом таблица в хтмл виде, как и чем мне прочитать отдельные ячейки этой таблицы? мне не обязательно php - можна перл или жабаскрипт, кто чем поможет!!!!


Помещено Nevermind 21-05-2003 в 02:26:

Имхо, выход один - считать целиком страницу, а потом вырезать нужный кусок с помощью регулярных выражений.


Помещено Sergey_pol 21-05-2003 в 06:19:

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


Помещено blacki 21-05-2003 в 08:54:

Находишь повторяющиеся элементы explode до и после интересующей тебя инфы, чистишь все остальное спомощью eregi_replace, str_replace, strip_tags. И с помощью explode (в качестве параметра у него повторяющийся элемент) нарезаешь инфу.

В качестве примера рекомендую посмотреть 4CM_Grabber.

__________________
Национальность - русский, вероисповедание - программист.


Помещено Sergey_pol 22-05-2003 в 00:16:

Опишу задачу точнее: в таблице погодные данные, поэтому как ты понимаешь они всегда разные и что вычитывать конкретно не понятно, есть только их постоянное месторасположение в табличке (ячейки).
4CM_Grabber - где можна посмотреть?


Помещено Kfmook 22-05-2003 в 02:14:

ну так это место в таблице то и есть что нужно искать, т.е. ищещь что то типа между <td> и </td>
вот пример что нужно искать в meteo-tv.ru (на примере города Якутск)
http://www.meteo-tv.ru/cgi-bin/cgi1?id=24959
вот старая программа на перле:

code:

use LWP::Simple;
if ( $doc = get("http://www.meteo-tv.ru/cgi-bin/cgi1?id=24959") ) { 
$doc = Squeeze($doc);
if ($doc =~ /Якутск(.*?)Выберите город/mi)
 {
    $p = $1; $_ = $p;
    $p =~ /\<TD ALIGN=CENTER BGCOLOR=\#FFCC00\>(.*?)\<\/TD\>/oi;
    $day =  koi2win($1);
    $p =~ /Днем\<\/TD\> \<TD\>\<CENTER\>(.*?)\<\/CENTER\>/oi;
    $t_day = $1;
    $p =~ /Ночью\<\/TD\> \<TD\>\<CENTER\>(.*?)\<\/CENTER\>/oi;
    $t_night = $1;
    $p =~ /\<IMG ALT='(.*?)' SRC=/oi;
    $atm = koi2win($1);
    $do=date();
}
sub Squeeze {
  my ($s) = @_;
  $s =~ s/ / /gi;
  $s =~ s/[\r\t\n ]+/ /gi;
  $s =~ s/^[\r\t\n ]//gi;
  $s =~ s/[\r\t\n ]$//gi;
  return $s;
}


на выходе получим $day - день недели, $t_day, $t_nigth - температура днем и ночью, $atm - атмосфера

думаю на пхп легко переделаешь

__________________
http://simpsons.ykt.ru - русский портал о Симпсонах


Помещено blacki 22-05-2003 в 08:38:

Sergey_pol ты с какого сайта грабить собираешся? Я совсем недавно написал два погодных грабера meteo.infospace.ru и www.wunderground.com собираюсь еще пару сайтов расковырять. Можно поработать вместе.

__________________
Национальность - русский, вероисповедание - программист.


Помещено Sergey_pol 23-05-2003 в 00:57:

blacki давай поработаем, мои координаты:
sergey_pol@mail.ru и ася 169909623


Помещено blacki 23-05-2003 в 07:40:

ok

__________________
Национальность - русский, вероисповедание - программист.


Помещено Sergey_pol 26-05-2003 в 07:34:

чо замолчал, дай свои координаты


Помещено blacki 26-05-2003 в 08:10:

blacki@latinsoft.lv
ICQ: 167130253

не замолчал.. Стучался к тебе в асю да бестолку.

__________________
Национальность - русский, вероисповедание - программист.


Формат времени GMT. Текущее время 17:18.
Показаны 11 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.