Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Генерация линков с html файлов!
цитата
27/04/09 в 17:35
 clomind
как из большого количества html файлов сгенерировать на отдельной странице линки на них,
как бы Related Galleries, или sitemap!
Спасибо!
цитата
27/04/09 в 17:55
 Alexandur
Абстрактный вопрос.
На пхп можно сделать с помощью: http://ru2.php.net/function.opendir
Готовый пример оттуда:
Код:

<?php
$dir = "/tmp/";

// Открыть заведомо существующий каталог и начать считывать его содержимое
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            print "Файл: $file : тип: " . filetype($dir . $file) . "\n";
        }
        closedir($dh);
    }
}
?>
цитата
27/04/09 в 18:45
 lega_cobra
Проще всего вытащить линки при помощи XML парсера. Лучший HTML парсер в командной строке - lynx -dump. Например, команда:

lynx -dump https://www.master-x.com/forum/

Дает список из 238-ми a_href линков (фигасе) в одном html файле. При этом, злобные буратины, дающие рекламу во флеше свои линки провтыкали icon_smile.gif
цитата
27/04/09 в 19:18
 clomind
icon_neutral.gif а по проще нет чего icon_wink.gif через строку у меня не выходит, страницы у меня на компуторе! через код как ? я не силен в скриптах icon_smile.gif если можете, то типа что-то небольшого мануала! icon_wink.gif
БУДУ очень благодарен! +3
цитата
27/04/09 в 19:26
 SAV
проще руками
а пхп скрипт в миг сделает
цитата
27/04/09 в 20:18
 Alexandur
В виндовсе:
Пуск - Стандартные - Командная строка:
Код:
DIR (путь к каталогу где файлы)>links.txt /B

запишет все ссылки в файл links.txt

или
Код:
DIR (путь к каталогу где файлы) /B

выведет на экран
цитата
27/04/09 в 21:55
 clomind
gimcnuk: Я понял силу PHP icon_smile.gif как сделать так что бы этот скрипт вывел на Экран такое Содержание:

<a href="File.html">File</a>
..
<a href="File-N.html">File-N</a>

а то я пытался изменить что то в том куске который ты мне дал, но языка не знаю ошибки выдает icon_smile.gif+3
Спасибо!
цитата
27/04/09 в 22:15
 Alexandur
Учи язык.

Код:
echo "<a href=\"$file\">". str_replace('.html', '', $file) ."</a>\n";


или

Код:
echo "<a href=\"$file\">". substr($file, 0, -5) ."</a>\n";
цитата
28/04/09 в 01:26
 clomind
спасибо! результат не сильно, но устраивает! +3
Вопрос - а можно сделать так ?
<a href="Filename.html">File name</a> что бы бралось название у файла с тайтла, что бы нормально смотрелось! а не так, как выходит сейчас:
<a href="Filename.html">Filename</a>
цитата
28/04/09 в 02:22
 Suono Libero
Это... очень наврядли.
цитата
28/04/09 в 04:32
 MoriArty
clomind писал:
...что бы бралось название у файла с тайтла

что то типа такого, если правильно тебя понял:
Код:

<?php
    $FSO = glob('*.htm*');
    if (!count($FSO)) {
        die('Nothing to parse...');
    }
   
    foreach ($FSO as $fso_item) {
        if (is_dir($fso_item)) {
            continue;    // some directory with .htm* ext. so skip one
        }
       
        $file_body = file_get_contents($fso_item);
        if (preg_match('/<head.*?>.*?<title>(.*?)<\/title>.*?<\/head>/ims', $file_body, $matches)) {
            printf("%s\n", trim($matches[1]));
        } else {
            printf("no <title> tag or wrong HTML structure... using file name instead) - %s\n", $fso_item);
        }
    }
     
?>


для диры с таким:
Код:

02.05.2008  12:36    <DIR>          .
02.05.2008  12:36    <DIR>          ..
29.11.2006  02:28            10я520 AnnotationDesc.html
29.11.2006  02:28             9я915 AnnotationDesc.ElementValuePair.html
29.11.2006  02:28            17я418 AnnotationTypeDoc.html
..............................
29.11.2006  02:28            12я369 package-tree.html
29.11.2006  02:28    <DIR>          class-use
29.11.2006  02:28            14я143 package-use.html
28.04.2009  04:24               610 get.php
28.04.2009  04:20                 0 AAAA.htm
28.04.2009  04:18    <DIR>          BBBBB.html



получаем типа такого:
Код:

no <title> tag or wrong HTML structure... using file name instead) - AAAA.htm
AnnotationDesc.ElementValuePair (Doclet API)
AnnotationDesc (Doclet API)
AnnotationTypeDoc (Doclet API)
AnnotationTypeElementDoc (Doclet API)
.............
WildcardType (Doclet API)
com.sun.javadoc (Doclet API)
com.sun.javadoc (Doclet API)
com.sun.javadoc Class Hierarchy (Doclet API)
Uses of Package com.sun.javadoc (Doclet API)
цитата
28/04/09 в 11:38
 clomind
icon_wink.gif спс всем. всем +3 icon_sad.gif только задачу свою так и не решил!


Эта страница в полной версии