HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 30.11.2009, 17:46
alwex
Участник форума
Регистрация: 14.12.2008
Сообщений: 140
Провел на форуме:
186812

Репутация: 14
По умолчанию

Код:
<tr><td colspan=3 style="padding: 10px 10px 20px 20px" class="news">
			<span class="_reachbanner_">Влюбиться в&nbsp;вампира&nbsp;— страшно и&nbsp;романтично. Но&nbsp;потерять любимого, решившего ценой разрыва спасти свою девушку от&nbsp;роли пешки в&nbsp;вечном противостоянии кланов &laquo;ночных охотников&raquo;,&nbsp;— это&nbsp;просто невыносимо. Белла Свон мучительно переживает исчезновение Эдварда и&nbsp;безуспешно ищет забвения в&nbsp;дружбе с&nbsp;мальчишкой-индейцем Джейкобом Блэком. Она&nbsp;даже не&nbsp;подозревает, что&nbsp;её лучший друг&nbsp;— порождение ещё одного &laquo;народа Тьмы&raquo;. Народа, куда более жестокого и&nbsp;опасного, чем&nbsp;аристократы-вампиры…</span>
   </td></tr>
есть текст такого вида (выше) и надо парсить всё что внутри<span>..</span>
НО там с новой строчки <span>
 
Ответить с цитированием

  #2  
Старый 30.11.2009, 18:03
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

В регулярке Uis
PHP код:
<?php
$str 
'
<tr><td colspan=3 style="padding: 10px 10px 20px 20px" class="news">
            <span class="_reachbanner_">Влюбиться в&nbsp;вампира&nbsp;— страшно и&nbsp;романтично. Но&nbsp;потерять любимого, решившего ценой разрыва спасти свою девушку от&nbsp;роли пешки в&nbsp;вечном противостоянии кланов &laquo;ночных охотников&raquo;,&nbsp;— это&nbsp;просто невыносимо. Белла Свон мучительно переживает исчезновение Эдварда и&nbsp;безуспешно ищет забвения в&nbsp;дружбе с&nbsp;мальчишкой-индейцем Джейкобом Блэком. Она&nbsp;даже не&nbsp;подозревает, что&nbsp;её лучший друг&nbsp;— порождение ещё одного &laquo;народа Тьмы&raquo;. Народа, куда более жестокого и&nbsp;опасного, чем&nbsp;аристократы-вампиры…</span>
   </td></tr>
'
;

if(
preg_match('#<span.*>(.*)</span>#Uis',$str,$m))
echo 
$m[1];

?>
 
Ответить с цитированием

  #3  
Старый 30.11.2009, 18:09
alwex
Участник форума
Регистрация: 14.12.2008
Сообщений: 140
Провел на форуме:
186812

Репутация: 14
По умолчанию

пробовал я так, на той странице есть такого текста с span class="_reachbanner_" кучу потому надо что бы по всему шабу как-то...
 
Ответить с цитированием

  #4  
Старый 30.11.2009, 18:23
blaga
Постоянный
Регистрация: 23.03.2006
Сообщений: 977
Провел на форуме:
2976185

Репутация: 694


Отправить сообщение для blaga с помощью ICQ
По умолчанию

preg_match_all ?
 
Ответить с цитированием

  #5  
Старый 30.11.2009, 18:26
alwex
Участник форума
Регистрация: 14.12.2008
Сообщений: 140
Провел на форуме:
186812

Репутация: 14
По умолчанию

а как я буду знать именно тот? понимаешь тут же может изменяться... надо хороший шаб
 
Ответить с цитированием

  #6  
Старый 30.11.2009, 18:37
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

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

  #7  
Старый 30.11.2009, 19:14
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

Цитата:
Вот ещё вопрос: почему в preg_match_all ('/<a href="(\d+\/)">(.+?)<\/a>/', $str, $m); выдирается именно ссылка, а не название?
Выдирается тут все, разберем регулярку:
PHP код:
preg_match_all ('/<a href="(\d+\/)">(.+?)<\/a>/'$str$m); 
В $m[0] будут находится все ссылки с HTML тегами, в $m[1]; будут находится первые вхождения заключенные в фигурные скобки, тоесть все что подходит под (\d+\/) в нашем выражении, ну и в $m[2]; будет все что попадает под (.+?)
Вообщем после регулярки напиши print_r($m); и сам все увидиш.
Цитата:
И рег выражения могут выдирать русские буквы?
Есесно '#[а-я]#i'
 
Ответить с цитированием

  #8  
Старый 30.11.2009, 21:32
programming
Участник форума
Регистрация: 26.08.2009
Сообщений: 138
Провел на форуме:
201522

Репутация: 18
По умолчанию

Цитата:
Сообщение от b3  
Выдирается тут все, разберем регулярку:
PHP код:
preg_match_all ('/<a href="(\d+\/)">(.+?)<\/a>/'$str$m); 
В $m[0] будут находится все ссылки с HTML тегами, в $m[1]; будут находится первые вхождения заключенные в фигурные скобки, тоесть все что подходит под (\d+\/) в нашем выражении, ну и в $m[2]; будет все что попадает под (.+?)
Вообщем после регулярки напиши print_r($m); и сам все увидиш.

Есесно '#[а-я]#i'
Спасибо.
Вот ещё проблема..
С http://www.ozon.travel/countries/16644/ нужно выдернуть код страны. Как составить рег выражение?
Составлял так:
PHP код:
preg_match_all('/Код страны:<\/strong>(.*)<\/p>/',$out1$regs1); 
 
Ответить с цитированием

  #9  
Старый 30.11.2009, 21:52
whexp
Познающий
Регистрация: 30.11.2009
Сообщений: 97
Провел на форуме:
333264

Репутация: 80
По умолчанию

programming
По идее, как ты составил должен выплевывать тебе символ новой строки + 3 табуляции.
Там довольно редко стречается табуляция так что можно зацепиться за нее (Вообще можно просто искать по маске \+\d+ но не факт, что на странице не будет чего-то вроде +0, что не является кодом страны). Так что получается что-то вроде:
Код:
\t\t\t(\+\d+)</p>
 
Ответить с цитированием

  #10  
Старый 30.11.2009, 22:31
programming
Участник форума
Регистрация: 26.08.2009
Сообщений: 138
Провел на форуме:
201522

Репутация: 18
По умолчанию

Цитата:
Сообщение от whexp  
programming
По идее, как ты составил должен выплевывать тебе символ новой строки + 3 табуляции.
Там довольно редко стречается табуляция так что можно зацепиться за нее (Вообще можно просто искать по маске \+\d+ но не факт, что на странице не будет чего-то вроде +0, что не является кодом страны). Так что получается что-то вроде:
Код:
\t\t\t(\+\d+)</p>
Спасибо. Разобрался как выдергивать такие вещи.
Появилась ещё большая проблема. Есть допустим http://www.ozon.travel/countries/1727/ и http://www.ozon.travel/countries/6675/ , а также остальные страны с http://www.ozon.travel/countries/.
Каким образом возможно выдернуть описание с этих страниц? То есть, чтобы шаблон рег выражения подходил ко всем страницам стран. Выдернуть нужно только основное описание, то есть перелёты и т.д. не нужно..
Возможно ли такое осуществить?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 6762 17.06.2010 21:23
Всё о беспороводном соединении на кпк и смартфонах! Задай вопрос - получи ответ! ARMENIN Беспроводные технологии/Wi-Fi/Wardriving 2 02.11.2008 00:40



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ