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


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

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

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


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

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

Прошивка atmega328 с помощью usb-ttl конвертера ftdi232


В одной из своих «поделок» пришлось повозиться с увеличением срока автономной работы. Как бы я ни оптимизировал потребление питания, время «жизни» аккумулятора не дотягивал до необходимого. Даже в спящем режиме, миниатюрная arduino pro mini потребляет 10 мА. Поэтому я решил использовать atmega328 без лишних обвесов, которые присутствуют на плате и не нужны в моем проекте. Эти ухищрения принесли свои плоды – потребление тока упало до 10 мА в рабочем состоянии и 0.13 мА в спящем режиме. Все хорошо, но появилась новая задача – прошить микроконтроллер.

Читать далее «Прошивка atmega328 с помощью usb-ttl конвертера ftdi232»

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


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

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

Подключение кнопки к arduino. Как побороть дребезг контактов?


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

Читать далее «Подключение кнопки к arduino. Как побороть дребезг контактов?»

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


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

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

Кнопки репостов в социальные сети с помощью JavaScript


Социальные сети занимают огромный сектор интернета, миллионы людей ежедневно выходят в онлайн только ради них. В связи с этим, появилось множество новых направлений рекламы и продвижения продуктов. Одним из инструментов которых являются репосты — простая публикация ссылки на страницах пользователей сец. сетей. Правильно оформленная ссылка является не плохой рекламой и может привести потенциальных клиентов на ваш сайт.
Для упрощения механизма репостов, существуют специальные виджеты, их можно легко найти в документации соц. сетей и установить на свой сайт. Но легко и быстро, не всегда равно качеству. Помимо установки кода виджета, необходимо подготовить площадку, чтобы при репосте была использована верная информация: заголовок, описание, картинка и ссылка. Кроме этого, готовые решения всегда имеют и готовый дизайн, который в большинстве случаев, крайне не сочетается с дизайном всего сайта. Но производить стилизацию виджетов не всегда получается, а если и получается, то крайне неудобно. Поэтому нужно искать другое решение.

Читать далее «Кнопки репостов в социальные сети с помощью JavaScript»

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


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

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

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


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

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

Пример использования EEPROM. Хранение настроек в arduino


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

Читать далее «Пример использования EEPROM. Хранение настроек в arduino»