Архив метки: regexp

Регулярные выражения в правилах сортировки The Bat

В этих ваших интернетах найдется немало примеров регулярных выражений (regexp) в The Bat. Но нет ни одного примера для реальной работы. Чаще всего для сложной сортировки почты является получение какого-то заголовка письма. И это как раз в «примерах» встречается очень редко. Читать далее

Выражения должны быть регулярными

Как и утренний стул. Так по крайней мере заявляет мой доктор.

Итак, время от времени нам (а говорю я про песочницу веб-программистов), приходится работать с регулярными выражениями. И если это не банальная проверка e-mail, шаблоны для которой есть уже во всех приличных библиотеках, а что-то посерьезней, то приходится изрядно повозиться.
Конечно если вы не знакомы с основами, то рекомендую прочитать пост который подготовил Archick о основах — регулярные выражения php.

А учитывая то что в последние пару недель я снова пиратствую, можете ожидать от меня интересных постов по теме.

Кстати по теме, ловлю себя на мысли что чаще всего использую группы символов с исключением, вида [^…]. Т.е. группа символов, включающая все символы кроме тех что указаны вместо троеточия.

Например вот это

/блаблабла ([^»]+) блаблабла/

в вольном переводе означает:

Боец, собери все отсюда и до забора первой кавычки и принеси сюда.

I, Parser. Как я пиратствовал. Я, Парсер

На днях увлеченно вспоминал опыт годичной давности по парсингу сайтов разработке информационных баз в сети Интернет. В общем пиратствовал.

На этот раз все прошло существенно быстрее и комфортнее.

Работа закончена и теперь я с чистой совестью и полными карманами, отдаю в хорошие руки набор пирата. Почти новый.

Набор включает:
1. Человека с прямыми руками и со знанием PHP и регулярных выражений.
2. Сервер или локальную машина с апачем+пхп+mysql, подключенную к безлимитному каналу.
3. Скрипт загрузки индекса необходимых страниц и скрипт загрузки самих страниц.
4. Парсер, вытаскивающий нужные данные из выкачанной кучи мусора.
5. Красивый шаблон для оформления результатов. Excel, xml, csv или html.
6. Ну и какой же пират, без попугая-матершинника и черной повязки на глаз.

В выборе железа — предпочтительнее локальная машина или выделенный сервер. У шаред хостингов — масса ограничений. Особенно у дешевых. Вешать это все дело на крон — занятие крайне неблагодарное. Проверено.

При загрузке данных все решается просто — через curl. Пока админы пьют пиво — качаем все в один поток, с одного IP, без refferer, с простым User agent. А пока они допьют — все ихнее золотишко уже у нас. Хе-хе.

Пункты 3 и 4 комбинируются по ситуации. Все скрипты можно объединить в один большой цикл с одновременной выкачкой-парсингом. Если база маленькая то лучше так и поступить.

Самое трудоемкое во всем этом — написать регулярное выражение и исправить в нем все ошибки. Дальше — дело техники.

И… соблюдайте копирайт! :)