Архив Компоненты

Определение языка и кодировки. Компонент для CakePHP

Для моего текущего проекта необходимо определять на каком языке пользователь вводит информацию. Причём это не сложный выбор между PHP и Perl, а, например, между английским и испанским. Сначала я хотел составить список самых распространённых слов в популярных языках - предлоги, частые глаголы и т.д. Почти сразу я понял, что точность будет небольшая, а работы - очень много, даже, если её буду делать не я :).
Поэтому пришлось думать дальше. Мне больше всего понравился способ, в котором учитывается частотность букв, двух-, трёх- и четырёхбуквенных сочетаний.
Читать полностью >>

13 комментариев

Загрузка в несколько потоков с multi_curl и PHP

Когда нужно скачать сотню страниц, то можно обойтись моим компонентом Browser. Но недавно мне надо было скачать столько информации, что нужно было ждать неделю. Проблема в том, что компонент загружает страницы по очереди. Пришлось придумывать как заставить его качать в несколько потоков.
Читать полностью >>

1 комментарий

GoogleSearch: компонент для CakePHP, который парсит результаты поиска Google

Google - классная поисковая система, но почему то они закрыли доступ к поиску в нём через SOAP. Как говорила в далёком детстве школьная учительница английского “Shame on you”, ведь даже у Yandex есть Yandex.XML. Мы же не спамеры, нам 1000 поисков в день с головой достаточно.

Но, пока можно искать через браузер, можно искать через Browser :)
Попробуем применить наш компонент в боевых условиях.
Читать полностью >>

5 комментариев

Browser: компонент для CakePHP

Мне часто приходится обрабатывать информацию с других сайтов и наконец я решил написать свой компонент Browser.

Функциональные возможности

  • Корректно разделяет header и body
  • Может кешировать запросы
  • Может отправлять POST-запросы
  • Может работать через proxy
  • Поддерживает cookies
  • Может автоматически вводить имя пользователя и пароль
  • Автоматически подставляет referer с прошлой страницы (можно установить свой)
  • Подставляет нормальный UserAgent, чтобы сайты не думали, что это робот

Читать полностью >>

8 комментариев

Тестирование компонентов CakePHP

Проникшись идеей Test-Driven Development, я решил наконец делать тесты для новых проектов. Предлагаю написать компонент Browser, на котором посмотрим как тестируются компоненты.
Читать полностью >>

5 комментариев

Страница 1 из 11