![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Допусти есть нечто подобное:
Как мне от сюда извлеч урлы ? все даже картинки --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Я вот так извлекал в php:
В JavaScript, шаблон похожий... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, Дело в том что тут не совсем URL тут запись вида : ?type=town&name=%C4%EE%ED%E5%F6%EA&fi=2884&la=2264&code=6864&template=AviaTemplate&id=34519&req=findtown&town=Дон
я не могу составить шаблон что бы подобное извлеч! --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
type(.|")*
type(.|>)* type(&|=|.)* ((?:?|&|=|.)*) Пробывал массу различных шаблонов но не как не подохит --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Ну а по кавычкам? href="......."
Добавлено @ 19:30 Типа как то так: /http:\"\.*\"/gi Это сообщение отредактировал(а) Ghirik - 5.2.2008, 19:34 -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Dr.Zlo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 12.11.2007 Репутация: 1 Всего: 2 |
Если я правильно понял задачу, то вот:
|
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, не выдерает в масив всё что между ковычек пробывал вот таким выражением:
href="((?:.)*) Может что-то не так делаю помогите пожалуйста )) Добавлено через 1 минуту и 23 секунды Dr.Zlo, данный текст не есть Документом это большая строка полученная Ajax запросом Задача в том что бы пропарсить документ на ссылки Добавлено через 3 минуты и 46 секунд ссылки какого вида я привёл выше примером --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Вот, синтаксис посмотрите, там вроде всё есть...
Во первых, заднюю кавычку нужно обязательно показывать, во вторых, все спец символы нужно закрывать обратными слэшами. Добавлено через 1 минуту и 7 секунд
Нет, не правильно, там не URL-ы а билеберда всякая.... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
||||
|
|||||
| Хрипа |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, href=\"((?:.)*)\" не работает
Кстати я знаю примочки регулярных выражений в php уже бы довно получил данные между двумя тегами или ещё чего а вот в JS возвращает бпер какой-то!! Может кто-то пример кинет кто много работал с регами JS ? Добавлено @ 19:45 Ghirik, получается задача в том что бы извлеч все что между href="...." в массив или обьект что бы можно было работать с этим потом! Код:
На выходе:
Добавлено @ 19:50 Проблема в том что оно не извлекает а возвращает полный бред! PHP возврашает всё по шаблону в многомерный массив а тут непонятно что! Это сообщение отредактировал(а) Хрипа - 5.2.2008, 19:50 --------------------
<Вырезана, как не соответствующая правилам форума > |
||||
|
|||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
А-а-а..... дак вам вообще не то нужно....
Добавлено через 52 секунды Счас сделаю..... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, Может поможите примером как это реализовуется на JS ?
Того что я прочёл массу документации и так ничего не нашол. Добавлено через 3 минуты Спасибо --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Этож надо так тупить!!!!!
Вот:
Добавлено через 2 минуты и 30 секунд В этом примере, вначале получаем массив элементов "<a></a>", а потом в цикле складываем атрибуты "href" в нужное место. -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, не вы не поняли ))
я Получил Ajax запросом страничку она хранится в переменной. а А это текст и в нём только регулярными выражениями работать! так то я получил бы и сам тут ничего трудного! ) А вот насчёт работы с регулярными выражениями ? П/С DOM не подходит! --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Почему только регуляркой? Если у вас в переменной html, то можно через getElementsByTagName Вы дайте точное содержимое переменной, и станет всё понятно... не добавляя ни чего, голую строку... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Добавлено через 1 минуту имя переменной: Server.responseText; --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Если вам вернулся ответ в переменную response, то так
можно достать все тэги "a" в массив "a" Добавлено через 8 минут и 54 секунды Хрипа, не понял, это Вы что выложили? Там нарушен формат html. Так и есть в оригинале? Если html нарушен, то может и кавычек не быть, значит ни каким регулярным выражением не достать. На сколько я помню в ajax-овском респонсе возвращается строковое значение. -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Я вставил вашу страницу в html-редактор, там во многих местах нет кавычек, поэтому веся разметка сбита. Это вы сами просто что-то вырезали, или такая страница и есть?
-------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Вот именно текстовое значения а не документ. Поэтому Всякие getElement не работают!
Резать надо регами а я немогу нефига сделать! так как либо руки корявые либо нет документации нормальной, да и работает оно по странному да и вся документация на всех сайтах оденнаковая. Добавлено через 33 секунды Ghirik, http://avia.gismeteo.ru/avia.php?id=34519&...mp;req=findtown Добавлено через 3 минуты и 35 секунд Мне надо выташить ссылки с http://avia.gismeteo.ru/avia.php?id=34519&...mp;req=findtown которые в таблице Список ближайших аэропортов к городу: После чего бежать в цикле и выдерать по ним погоду! а я немогу не как получить ссылки так как регулярные выражения возвращают совсем не то! --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Ай да молодцы!!! счас попробую....
А ссылку лучше удалите..... Это сообщение отредактировал(а) Ghirik - 5.2.2008, 20:57 -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, обратится getElement тоже не работают, вторые сутки мучаюсь а толку 0.
--------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
php точно нельзя применить?
а то у меня есть готовое решение... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, на PHP вырезаю все в плоть до конкретного TD или DIV а мне надо Ajaxсом вырезать так как если из php то сервак меня банит а цеплять каждый раз прокси это долго!
--------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Так, всё сначала....
В переменной, AJAX-ответ. AJAX-ответ не содержит переводов строк(\n). Значит, у вас в переменной вся страница, только одной строкой. Правильно? -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, содержит \n\r
Добавлено через 1 минуту и 28 секунд Ghirik, вы то сами попробуйте. написать скрипт а то ешё больше времени потеряем и посматрите что и как ) если получится извлеч кинте пример буду век благодарен --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Ясно, буду пробовать, но это не быстро, потому, как сам плохло дружу с регуляркой.
Но подобное делал, не могу найти тот файл с регуляркой, весь комп перерыл.... Думаю, через часок разберусь... Это сообщение отредактировал(а) Ghirik - 5.2.2008, 21:09 -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, тут проблема что регулярки JS работают фигово
preg_match_all(); / возвращает все совпадения в масив а в js regexp.exec(); возврашает только то что попало под шаблон а не совпадения. Добавлено через 25 секунд Ghirik, буду очень благодарен если поможите разобратся что и как тут работает! --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Хрипа, я там черкнул на мыло (@mail.ru)... проверьте ящик, который здесь регистрировали...
-------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Хрипа, А вот такой пример вам не поможет?
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Я сделал, письмом отправил.... выкладывать не хочу, чтоб народ не баловался.
А кто соображает и сам сделает. ksnk, если интересно, могу дать ссылку в личке. Добавлено через 14 минут и 35 секунд На мой взгляд, нужно что то убирать из этой темы... либо ссылки, либо решение... лучше решение. Если автором задумывалось парсить именно этот сайт, то оставив ссылки можно дождаться появления новых механихмов защиты, какой ни будь периодической смены синтаксиса в параметрах. Да и вообще, не хорошо это... Это сообщение отредактировал(а) Ghirik - 6.2.2008, 10:37 -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Хрипа |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 11.12.2006 Репутация: нет Всего: нет |
Ghirik, ksnk,
Спасибо за помошь )) теперь обсалютно понятно как работать с exec аказуется надо вызывать пока оно что-то возвращает и в цикле смотреть данные )) большое спасибо! --------------------
<Вырезана, как не соответствующая правилам форума > |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |