| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Тексты > парсинг странички |
| Автор: alligator 11.1.2007, 20:27 | ||
Наваял ф-ю которая выдерает урлы......
Работает нормально если в коде только урлы(без явы и тд , это добавлю потом),НО есть одна проблемка не могу с ней справиться ..... если после <a href="http://somesite.com"> , присутствует например <img src=""................ то ф-я уже ничего не находит ,Как поправить...... ? функция будет применяться для парсинга абсолютно разных сайтов с разным дизайном и соответственно код ссылки могут быть представлены по разному.... |
| Автор: Mal Hack 11.1.2007, 20:58 |
| А что надо-то? |
| Автор: alligator 11.1.2007, 21:10 | ||
Проблема решена , переделал в такой вид:
нужно выдрать все анкоры(текст ссылок) у ссылок А проблемка была что регуляр не читал русские символы пришлось добавить а-я тогда стало нормально Кстати есть вопрос : когда используеться модификатор шаблона "i" я могу писать только а-я или еще надо А-Я чтобы поиск был без учета регистра..... ???? |
| Автор: alligator 11.1.2007, 21:59 |
| Еще вопросик повявился у меня куча регуляров для удаления тего возможно ли данную операцию сделать одним регуляром ? |
| Автор: alligator 13.1.2007, 19:26 | ||
Mal Hack, катит , но ентот регуляр для всех урлов.... Свой регуляр довел , до вот такого вида:
Работает более или менее стабильно, хотя бывает глюк когда не обнаруживает ссылку , но мне кажеться что енто связано с использованием curl_multi_init() |
| Автор: Mal Hack 13.1.2007, 19:29 | ||
Что значит не для всех? А для каких надо?
Результат работы регулярки не зависит от того, как получается исходная информация. |
| Автор: alligator 13.1.2007, 19:56 |
Я на написал что для всех урлов..... А надо для определенного урла , посмотри в моей вводиться переменная ...... |
| Автор: Mal Hack 13.1.2007, 20:03 | ||
|
| Автор: alligator 13.1.2007, 20:15 | ||
Ничего не находит....
Ни на одном сайте ничего не нашел.... |
| Автор: Mal Hack 13.1.2007, 20:34 | ||
|
| Автор: alligator 13.1.2007, 20:47 | ||
Добавил проверку на параметры урла..... и чуток вывод почище сделал Теперь обнаруживает , но нестабильно , например: с первого сайта выдрал все урлы и сохранил как результат не тот анкор, а именно от последней выдраной ссылки.... Добавлено @ 20:47 http://it-2.ru/yand/pos/direct/multi.php |
| Автор: Mal Hack 13.1.2007, 21:00 | ||
| alligator, все, что ты сделал - лишнее. Оптимизация может быть только в виде:
Но у меня это не получилось, почему не помню. |
| Автор: alligator 13.1.2007, 21:15 | ||||
Такой вариант не находит ничего, я понимаю что он более правильно сделан с точки зрения универсальности, но вариант показанный мной выше
Хоть что то находит..... Добавлено @ 21:18 Исправлено! Посмотри последний вариант регуряла что я выложил.... |
| Автор: Mal Hack 13.1.2007, 21:24 | ||||
На выходе:
|
| Автор: alligator 13.1.2007, 21:33 | ||||
Ну и неправильно он должен было получить
Тоесть стулья, стол, диван Я исправил в итоге + отпадают все регуляры по preg_replace =)))
В итоге - универсальная регулярка для выдирания анкоров для определенного сайта |
| Автор: Mal Hack 13.1.2007, 21:52 |
УРЛы разные проверял. Это что? www. ???? Так так и пиши (www\.)? |
| Автор: alligator 13.1.2007, 22:32 |
| Ок исправлю |