Парсер фида rutracker`а с помощью php


Помимо программирования у меня есть еще несколько увлечений, одним из них, является чтение. Точнее прослушивание книг. Посидеть с книжкой в руках – это непозволительная роскошь и нереальная трата времени, которую я не могу себе позволить из-за своего ежедневного, довольно плотного, графика. Поэтому прослушивание аудиокниг является просто спасением. Послушать пару глав романа в дороге или перед сном и отвлечься от мирской суеты, это верх наслаждения. Так сложилось, что всю свою сознательную жизнь я увлекаюсь фантастической литературой, причем только отечественных авторов. Озвучкой таких книг, в большинстве случаев, занимаются люди, увлеченные и почти всегда без коммерческой составляющей. Свои труды ребята выкладывают на разные ресурсы, но основной площадкой является, запрещенный РКН, rutracker.org. Как зайти на торрент и что-то там найти, мы все прекрасно знаем. А вот как это дело автоматизировать, я думаю, знают не все. Поэтому попробую это дело исправить.

Читать далее «Парсер фида rutracker`а с помощью php»

Отправка запроса через прокси-сервер с помощью php и cURL


В связи с тем, что РКН объявил святую войну одному мессенджеру, под дружественный огонь попали и многие другие сервисы. IP-адреса которых были, случайно или не совсем случайно, заблокированы. И к одной из жертв мне пришлось искать возможность подключиться – отправлять запросы, для получения данных. Самое простое решение, это настроить vpn на сервере или воспользоваться другим сервером. Но это дело дорогое и трудозатратое. Поэтому такие варианты пришлось сразу исключить. Немного поломав голову, пришла более простая идея – воспользоваться прокси-серверами. Прокси можно найти в свободном доступе очень быстро и многие из них бесплатные. Остается немного дописать код отправки запроса, который будет отправляться не напрямую к заблокированному сервису, а через прокси.

Читать далее «Отправка запроса через прокси-сервер с помощью php и cURL»

Поиск ближайшей станции метро с помощью php


В одном проекте, с которым пришлось столкнуться по долгу службы, клиент решил немного упростить жизнь гастарбайтеров-курьеров, которые занимаются доставкой товаров из интернет-магазина по Москве. Чтобы ребятам, плохо ориентирующимся в карте столицы, было проще и быстрее добираться до адресата, в путевом листе, помимо адреса, решили указывать ближайшую станцию метро. По задумке клиента, данное нововведение должно повысить скорость доставки и снизить процент потерявшихся курьеров на московских изогнутых улицах.
Путевой лист должен формироваться на сервере – это и стало основной проблемой. Раньше работать с адресами и прочими элементы карты, приходилось только на клиентской стороне. То есть все возможные манипуляции с объектами карты осуществлялись с помощью js и как реализовать подобный функционал на сервере не понятно.

Читать далее «Поиск ближайшей станции метро с помощью php»

Подсчет репостов сайта в социальных сетях с помощью php


Статья является продолжением прошлой публикации, где были реализованы кнопки шерингов социальных сетей. Чтобы оживить кнопки и сделать максимально похожими на стандартные виджеты, стоит добавить счетчики репостов. Получить нужные циферки можно записав количество кликов в базу данных, а потом сделать вывод на страницах сайта. Но такой способ имеет кучу недостатков: первый и самый весомый – это то, что пользователь, кликнув по кнопке, может закрыть окно с предложением сделать репост, а клик уже будет засчитан. Поэтому такой вариант сразу отпадает. Но есть возможность получать количество шерингов прямо от соц.сетей, для этого у них есть специальные api, воспользоваться ими будет самым правильным решением.

Читать далее «Подсчет репостов сайта в социальных сетях с помощью php»

Удаление лишних пробелов в строке с помощью php


Небольшая заметка об очередном использовании регулярных выражений. Поскольку регулярки сложно запомнить, я стараюсь все, с которым сталкиваюсь, сохранять и оформлять в статьи на блоге. Надеюсь, что такие короткие заметки полезны не только мне, но и помогут какому-нибудь скитальцу по интернету, в поисках нужной регулярки – в данном случае, это регулярное выражение для удаления лишних пробелов из строки.

Читать далее «Удаление лишних пробелов в строке с помощью php»

Новая версия класса SendMailSmtpClass. Отправка файлов через smtp с авторизацией по протоколу SSL на php


Больше четырех лет назад, я написал для своих нужд небольшой класс, для отправки писем через smtp. Это была первая версия SendMailSmtpClass. Через несколько месяцев после публикации класса и статьи о нем, на блоге прилично увеличилась посещаемость, и почти все поисковые запросы, так или иначе, были на тему отправки писем через smtp. Спустя еще 8-9 месяцев я немного дописал класс, теперь он смог отправлять письме через smtp с возможностью авторизации по ssl. Продолжение темы также стало быстро популярно среди посетителей сайта. И даже спустя 4 года темя не теряет своей актуальности, о чем может свидетельствовать десятки комментарием под статьями. А также, если верить метрике, то за последний месяц эти две статьи прочитало больше двух тысяч человек.
Выходит, что тема нужная и популярность ее не угасает. Но, судя по комментариям и письмам с вопросами, которые мне приходят на почту, то класс имеет свои недостатки. Самым большим, из которых является не удобная отправка файлов. Поэтому я решил немного обновить класс SendMailSmtpClass и добавить в него несколько улучшений.

Читать далее «Новая версия класса SendMailSmtpClass. Отправка файлов через smtp с авторизацией по протоколу SSL на php»

Регулярка для поиска русских слов в тексте


Последнее время многим отечественным компаниям не хватает русскоязычного рынка и очевидным решением является расширение на европейские просторы. Но почему-то к русским товарам и услугам англоязычные граждане относятся предвзято. Поэтому не редко, для улучшения продаж, организации представляются европейскими. И зачастую одним из инструментов продаж служит сайт, который должен быть на английском языке. А поскольку европейская версия сайта, почти всегда, это копия русского, то нужно максимально качественно перевести ее на иностранный язык. И мало того, что перевод должен быть качественным, еще нужно эти переводы аккуратно добавить на сайт. И тут начинается самое интересное: где-то на страницах остаются русские строчки, в js или html остаются русские комментарии, в alt-ах к картинкам и ссылкам остаются русские подписи и прочие мелочи, которые выдают русский след. С такой проблемой уже несколько раз приходилось сталкиваться, довольно сложно все проверить и протестировать. Поэтому, когда пришел очередной клиент с подобной проблемой, было решено упростить и ускорить работу тестировщика — написать небольшой скрипт, который автоматически будет сканировать страницу на наличие русских символов и слов.

Читать далее «Регулярка для поиска русских слов в тексте»

Хранение эмотиконов в базе данных. Mysql и четырехбайтные символы


Буквально в прошлой статье, я сетовал на отсутствие интересных задач на работе. И уже сегодня посчастливилось столкнуться с одной интересной проблемой, которая заставила «порыться» в интернете и поломать голову в поисках решения.
На одном из сайтов, клиент захотел добавлять текста, внутри которых помимо стандартных символов, могут быть использованы emoji symbols. По-русски они называются «эмотиконы» и выглядят как смайлики различных форматов. Если вы частый гость instagram и имеете привычку время от времени выкладывать свои фотки с крутыми фильтрами в сеть, то наверняка могли видеть подобные символы в подписях к фотографиям, а возможно и сами ими пользовались. Эти самые «смайлики» и стали причиной написания статьи.

Читать далее «Хранение эмотиконов в базе данных. Mysql и четырехбайтные символы»

Генерация календаря на месяц с помощью php


В последнее время, мне не так часто приходится сталкиваться с интересными задачками в программировании. Львиную долю занимают только рутинные таски по работе, а как известно, клиенты редко подкидывают занимательные задачи, да и в процессе работы не всегда получается насладиться программированием, и тем более описать этот опыт в статьях. Но сегодня мне попалась довольно интересная «головоломка» — генерация календаря на месяц, решением которой я хочу поделиться в статье.

Читать далее «Генерация календаря на месяц с помощью php»

Один robots.txt на несколько доменов


Недавно по работе столкнулся с довольно рутинной и нудной задачей – выполнение ТЗ для СЕО-оптимизации сайта. Кто сталкивался с подобными задачами, наверняка, сейчас сморщили гримасу неприязни и физическую боль во всем теле. Да, СЕОшники знают толк в извращениях. Но статья не про продвижение сайтов и не про веселых ребят оптимизаторов, а про один из пунктов ТЗ, который внес немного разнообразия в рабочий процесс и скрасил трудовой час. В одной из задач ТЗ, была поставлена цель, сделать различное содержание файла robots.txt для разных доменов. Домены в свою очередь припаркованы к одному серверу и используют одни и те же файлы. То есть нужно реализовать вывод разной информации при обращении к одному и тому же файлу. Задачка мне показалась интересная и вот, про нее статья.

Читать далее «Один robots.txt на несколько доменов»