Помощник
|
Ошибка в парсинге Url |
FjuZ
|
Сообщение
#1
|
||
|
|
||
|
|||
Lordie |
20.11.2009, 1:37;
Ответить: Lordie
Сообщение
#2
|
|
FjuZ, что за мазохизм?.. file() читаем все в массив, а дальше циклом..
|
|
|
FjuZ
|
Сообщение
#3
|
|
Lordie, так?
<?php $array = file ('category.txt'); $c=count($array); for ($x=0; $x<$c; $x++) { $url = $array[$x]; $body = file_get_contents($url); preg_match_all('#(?:href\s*=\s*["|\'](?:http://)+(?:www.)?)([^\'"]*)?(?:["|\'])#six', $body, $out, PREG_SET_ORDER); print_r($out); } ?> результат не изменился -------------------- |
|
|
LaeX |
20.11.2009, 2:40;
Ответить: LaeX
Сообщение
#4
|
|
Функция file():
возвращает содержимое прочитанного файла в виде массива. Каждый элемент возвращенного массива содержит соответствующую строку с символами конца строки. В случае ошибки, функция file() возвращает FALSE. Из-за этого по-моему и брались ссылки только из последней страницы в файле category.txt. Я использовал Simple HTML DOM для поиска ссылок на страницах и убирал символы конца строки. <? include('simple_html_dom.php'); $array = file('category.txt'); foreach($array as $url) { $new_url = str_replace("\r\n","",$url); $html = file_get_html($new_url); foreach($html->find('a') as $a_el) {echo $a_el->href."<br>\n";} $html->clear(); unset($html); } ?> P.S. качнуть Simple HTML DOM можно http://sourceforge.net/projects/simplehtmldom/ Сообщение отредактировал LaeX - 20.11.2009, 2:45 -------------------- Ѡ VDS за $2.99 (реф.) → 512/1024MB RAM, 50 GB HDD, полноценный SWAP |
|
|
FjuZ
|
Сообщение
#5
|
|
LaeX, я ваш код не весь понимаю мне лучше уже по моему способу выяснить ошибку, уже и так пробовал и сяк, фиг там.
-------------------- |
|
|
RedHead |
20.11.2009, 13:06;
Ответить: RedHead
Сообщение
#6
|
|
несовсем понятно что требуется от скрипта. Что на входе, что на выходе и т.д
|
|
|
FjuZ
|
Сообщение
#7
|
|
В файле domains.txt содержатся два сайта с которых скрипт должен показать все внешние ссылки
-------------------- |
|
|
Ghost Bear |
22.11.2009, 0:13;
Ответить: Ghost Bear
Сообщение
#8
|
|
Почему-то мне кажется, что print_r($out); вы добавили внутрь цикла только сейчас, а у себя делали его после цикла, благодаря чему выводился $out только с последнего preg_match_all, ибо каждый цикл, новый $out заменял собой старый.
|
|
|
FjuZ
|
Сообщение
#9
|
|
Ghost Bear, нет, всё именно так. можете сами запустить скрипт у себя, посмотрите.
тема актуальна как никогда! срочно понадобился этот скрипт. помогите пожайлуста, отблагодарю чем смогу -------------------- |
|
|
seotouch |
25.11.2009, 0:27;
Ответить: seotouch
Сообщение
#10
|
|
Ghost Bear, нет, всё именно так. можете сами запустить скрипт у себя, посмотрите. тема актуальна как никогда! срочно понадобился этот скрипт. помогите пожайлуста, отблагодарю чем смогу Хм, а скиньте кусочек файлика, из которого берется текст -------------------- |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Куплю "вечные URL" с ваших сайтов с тематикой - Пластиковые Окна! | 5 | regem | 8370 | 15.3.2020, 19:46 автор: Narsus797 |
|
Куплю места для размещения TXT+URL Строительная тематика. | 7 | regem | 7596 | 28.3.2019, 18:31 автор: regem |
|
Каталог открывается как ошибка 404 в hostcms | 0 | cheshire | 3254 | 2.7.2018, 11:09 автор: cheshire |
|
Куплю места для размещения TXT+URL Кафе, Ресторан, Банкетные тематики. | 0 | regem | 8336 | 1.3.2017, 3:20 автор: regem |
|
убрать GET запрос с URL Сделать ЧПУ ссылок |
18 | WoWeb | 9851 | 28.10.2016, 17:18 автор: WoWeb |
Текстовая версия | Сейчас: 29.3.2024, 19:53 |