Pull to refresh
-4
0
Send message

Python для анализа годовых температур в Москве

Level of difficultyEasy
Reading time3 min
Views3.8K

Python - это мощный язык программирования, который широко используется в области анализа данных, включая анализ погодных данных. Давайте на примере анализа годовых температур в Москве разберемся как с его помощью можно выгрузить, предобработать и визуализировать данные новичку в этом деле. 

Для начала, вам потребуется получить доступ к погодным данным. Вы можете использовать API, такие как OpenWeatherMap API, для получения данных о погоде. OpenWeatherMap API предоставляет доступ к текущим и историческим данным о погоде по всему миру.  

Продолжить
Total votes 5: ↑4 and ↓1+3
Comments10

Словарь-справочник юридических терминов из ГОСТов для сферы IT. Часть 20 — Инт-Ину

Level of difficultyEasy
Reading time20 min
Views1.5K

Участие России в ВТО потребовало стандартизации терминов и определений, для: «предупреждения действий, вводящих в заблуждение приобретателей, в том числе потребителей» (ст. 6, 46 184-ФЗ). Двухуровневая система разделения технических регламентов и ГОСТов, обусловленная их обязательным и добровольным характером, согласно статье 46 184-ФЗ, преобразуется в одноуровневую. В современном российском обществе, когда правила статьи 46 указа 184-ФЗ “О стандартизации” и ГОСТы являются необходимыми к выполнению, появляется потребность в применении и сравнении тысяч терминов. В целях упрощения работы со множеством терминов  был создан этот словарь.

Читать далее
Total votes 33: ↑1 and ↓32-31
Comments26

Точечная маршрутизация по доменам на роутере с OpenWrt

Level of difficultyMedium
Reading time13 min
Views42K

Статья о том, как настроить точечный обход блокировок по нужным доменам на роутере с OpenWrt. На мой взгляд, это самый удобный способ, который можно реализовать сейчас.

Я предоставляю уже готовый конфиг с самыми востребованными доменами, который можно дополнять.

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

Помимо инструкций по настройке туннелей Wireguard и OpenVPN, написал инструкцию по использованию технологий, которые помогут в обходе блокировок по протоколу: Shadowsocks, VLESS и прочими.

Читать далее
Total votes 27: ↑27 and ↓0+27
Comments24

Настройка клиента Outline VPN на OpenWRT (все версии) на базе пакета shadowsocks-libev и tun2socks

Level of difficultyEasy
Reading time10 min
Views33K

Outline VPN это проект компании Jigsaw, дочерней компании Google. Outline использует протокол Shadowsocks для связи между клиентом и сервером. Трафик шифруется с помощью шифра IETF ChaCha20 и аутентифицируется с помощью IETF Poly1305.

В этой инструкции мы рассмотрим настройку клиента на базе пакета shadowsocks-libev и опционально, поднятие интерфейса с помощью kmod-tun и xjasonlyu/tun2socks. Способ подходит для роутеров с объёмом ОЗУ от 64 Мб и ПЗУ от 8 Мб.

UPD. 14.09.2023 Решение для ошибки ниже найдено, описал в п.4

daemon.err /usr/bin/ss-redir[7401]: accept: No file descriptors available

Нам потребуется доступ к SSH и Веб-интерфейсу LuCI

1.Установка пакетов на роутере

2.Получение ключа доступа в Outline Manager

3.Настройка shadowsocks-libev на роутере

4.Фикс для OpenWRT 22.03 и выше

5.Настройка интерфейса с помощью tun2socks

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments15

Борьба с рутиной при написании сопроводительных писем с использованием Python

Level of difficultyMedium
Reading time8 min
Views4.5K

Всем привет! 

Не секрет, что сейчас очень сложно устроиться Python backend разработчиком. 1000 и более откликов на одну вакансию уже стало нормой. Не от 2000 как на тестировщика, но тем не менее.

Сейчас уже мало на отлично знать сам Python (в том числе ООП, итераторы/генераторы и прочее), базы данных, фреймворки Django или FastAPI, Docker, git и много чего еще. Требования к кандидатам становятся все более высокими.

Пет проектов на гитхабе уже мало, нужен коммерческий опыт от 1 года (и ни в коем случае не фриланс). Проекты обучающих курсов уже примелькались и есть подозрение, что hr уже просто на автомате увидев один из таких - скипает анкету.

И даже если это всё есть, то можно попасть под фильтр "высшее IT образование" и\или "возраст до 30 лет".

Всё это всем известно, и только некоторые чиновники и курсы по обучению программированию рассказывают про "дефицит айтишников 700_000 человек".

Претендентов на вакансии стало настолько много, что включается еще один фильтр — Сопроводительное письмо. Без которого твой отклик скорее всего потеряется среди сотен\тысяч других. Потому что конкуренция.

После очередного получасового написания одного сопроводительного письма, которое скорее всего даже не прочтут, я решил сократить время его написания.

Здесь подразумевается, что сопроводительное письмо должно не просто дублировать резюме, а подсвечивать мэтчи по скиллам — мои сильные навыки, которые могут пригодиться компании и актуальны для конкретной позиции, показывать мою заинтересованность работы именно в данной компании.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments8

В мире незавершённых задач: почему важно доводить дела до конца?

Level of difficultyEasy
Reading time7 min
Views7.2K

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

Читать далее
Total votes 6: ↑3 and ↓30
Comments8

Преобразуем проект на Python в исполняемый файл .EXE

Reading time3 min
Views329K

С помощью Auto PY to EXE можно с лёгкостью преобразовывать файлы .py в файлы .exe. Благодаря этому ваш проект на Python будет работать как десктопное приложение и вы сможете запускать приложение на других машинах без необходимости установки Python.

В этой статье я расскажу, как преобразовать проект на Python в исполняемый файл. Решение будет работать вне зависимости от количества файлов .py в приложении. Стоит учесть, что Auto PY to EXE работает только с Python 3.5 или выше.
Читать дальше →
Total votes 45: ↑30 and ↓15+15
Comments11

Парсинг Instagram в промышленных масштабах

Reading time28 min
Views36K

В декабре 2020 года, завершив работать в научном институте, я увлёкся задачей добычи данных из соцсетей, в частности из Инстаграма. Прежде я работал только с готовыми данными, поэтому мне всегда было интересно, как эти данные можно добывать. За несколько дней до Нового Года я написал достаточно базовую статью про то как парсить Инст. В первых числах января мне написал заказчик и попросил сделать для него масштабный парсер инстаграма, который был бы способен делать более 10.000 запросов в сутки.

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

В рамках данной статьи я хочу рассказать про путь развития своего Pet-Project в потенциально мощный и серьёзный инструмент. Впереди вас ждёт увлекательное путешествие от хранения данных в простых Json-ах на жестком диске сервера, до облачной базы данных и автоматической инициализации cron расписания запуска процессов внутри докер контейнера, поехали!

Поехали!
Total votes 23: ↑18 and ↓5+13
Comments14

Настраиваем Vim под Python

Reading time4 min
Views42K
Сегодня я хочу рассказать вам, как я настраивал любимый всеми редактор Vim (который в одном режиме пищит, а в другом — все портит) для написания кода на Python. Статья расчитана на начинающих виммеров.
У меня получилась такая картинка:

Настроить и свой!
Total votes 69: ↑65 and ↓4+61
Comments61

Meshtastic – оперативно-тактический радиочат без сотовой связи и интернета. Часть 3. Радиомодемы самодельные

Reading time10 min
Views30K

В первой части темы мы познакомились с проектом Meshtastic. Узнали, что можно построить собственный радиочат на основе Mesh-сети, обычного смартфона и радиомодема.

Во второй части мы узнали о существующих фирменных решениях, о том какие заготовки для Meshtastic-модемы можно купить на Aliexpress, их отличия и особенности применения.

Если по какой-либо причине готовые изделия вас не интересуют, то в этой части мы рассмотрим материалы о том, как Meshtastic-модем собрать своими силами. Узнаем какие комплектующие вам для этого понадобятся и познакомимся с несколькими схемными решениями.

Собрать свой радиомодем совсем не сложно и под силу даже самому молодому и начинающему радиолюбителю. Интересно? Добро пожаловать под кат в третью часть.

Купить готовое? Отстаньте от меня – я сам!
Total votes 23: ↑23 and ↓0+23
Comments9

Передача данных по радиоканалу

Reading time4 min
Views15K

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

Важно! Здесь не будет информации о юридических особенностях использования радиосвязи, а также о частотах, мощности передачи, позывных и т. п. Применение радиосвязи имеет ограничения и регулируется Федеральным законом N 126-ФЗ «О связи».

Читать далее
Total votes 36: ↑36 and ↓0+36
Comments60

DPI мобильных операторов: от бесплатного интернета до раскрытия номера и местоположения

Reading time11 min
Views178K
Системы глубокого анализа трафика (Deep Packet Inspection, DPI) — программно-аппаратные комплексы для классификации проходящего интернет-трафика по типу данных (веб-страница, документ, аудио, видео), протоколу (HTTP, BitTorrent, VoIP/SIP) и конкретным программам (Skype, WhatsApp), зачастую обладающие дополнительной функциональностью. Системы DPI распространены и используются по всему миру продвайдерами проводного и беспроводного доступа.

Мобильные операторы используют системы глубокого анализа трафика, прежде всего, для приоритизации разного контента в интернете (QoS), чтобы можно было одновременно скачивать большой файл и смотреть видео на YouTube, и чтобы один пользователь сотовой сети, активно использующий интернет, не создавал проблем другим пользователям. Операторы используют DPI примерно с начала двухтысячных, с приходом UMTS (3G), чтобы более-менее честно разделять беспроводной канал ограниченной пропускной способности.

Мобильные операторы используют и другие возможности DPI, например, ускорение TCP и HTTP-трафика (TCP PEP, Performance-enhancing Proxy), для ускорения интернета в мобильных сетях и идентификации пользователей веб-сайтами. Если попытаться зайти в личный кабинет оператора с телефона, на многих операторах он откроется сразу, без необходимости ввода логина и пароля. Или, что можно было встретить лет 5 назад, простой заход на подозрительный веб-сайт или клик по рекламному баннеру из Android-игры оборачивался автоматической подпиской на платную услугу, о чем можно было узнать из СМС-сообщения.
Читать дальше →
Total votes 196: ↑194 and ↓2+192
Comments121

13 инструментов для обработки текста в командной оболочке

Reading time17 min
Views87K
Здесь представлен фрагмент будущей книги «Основные инструменты и практики для начинающего разработчика программного обеспечения» Бальтазара Рубероля и Этьена Броду. Книга должна помочь образованию подрастающего поколения разработчиков. Она охватит такие темы, как освоение консоли, настройка и эффективная работа в командной оболочке, управление версиями кода с помощью git, основы SQL, инструменты вроде Make, jq и регулярные выражения, основы сетевого взаимодействия, а также лучшие практики разработки программного обеспечения и совместной работы. В настоящее время авторы упорно работают над этим проектом и приглашают всех поучаствовать в списке рассылки.

Содержание


Читать дальше →
Total votes 56: ↑53 and ↓3+50
Comments65

Свой бесплатный телеграм-бот на базе GPT4free

Reading time7 min
Views42K

В этой статье я покажу, как создать свой телеграм-бот ChatGPT на базе библиотеки GPT4free.

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

Читать далее
Total votes 21: ↑17 and ↓4+13
Comments6

Регулярные выражения (regexp) — основы

Reading time21 min
Views866K

Регулярные выражения (их еще называют regexp, или regex) — это механизм для поиска и замены текста. В строке, файле, нескольких файлах... Их используют разработчики в коде приложения, тестировщики в автотестах, да просто при работе в командной строке!

Чем это лучше простого поиска? Тем, что позволяет задать шаблон.

Например, на вход приходит дата рождения в формате ДД.ММ.ГГГГГ. Вам надо передать ее дальше, но уже в формате ГГГГ-ММ-ДД. Как это сделать с помощью простого поиска? Вы же не знаете заранее, какая именно дата будет.

Читать далее
Total votes 59: ↑51 and ↓8+43
Comments76

Go Language. Небольшое клиент-серверное приложение

Reading time7 min
Views30K
Этот код написан с целью самообучения. Чтоб закрепить материал я решил немного прокомментировать проделанную работу.
Сразу скажу: на компилируемых языках не писал.

Что делает приложение


[к] — клиент
[c] — сервер
1. По установленному TCP соединению, [к] передает публичный ключ rsa.
2. При помощи принятого публичного ключа, [c] шифрует и отправляет сообщения [к]
3. [к] расшифровывает и выводит сообщения.

Вот как это выглядит в консоли:
image
Читать дальше →
Total votes 27: ↑23 and ↓4+19
Comments13

Виртуальная АТС. Часть 3: Переводим Asterisk на PjSIP без лишних телодвижений

Reading time6 min
Views31K


В первой и второй частях цикла статей мы разобрались с установкой IP-АТС (IP-PBX) на работающий под управлением Ubuntu VPS от RuVDS и настройкой основных функций с использованием канального драйвера chan_sip. Этот подход считается устаревшим, и в будущих версиях Asterisk поддержка chan_sip будет прекращена. Вместо него лучше использовать открытую мультимедийную библиотеку PjSIP. Несмотря на кардинальные различия в файлах конфигурации, переход не так сложен, как может показаться на первый взгляд.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments7

И решили мы подружить Baresip и Nodejs

Reading time3 min
Views18K
Что же такое Baresip? Как сказано на сайте проекта это кроссплатформенный, модульный SIP агент с поддержкой аудио и видео.

А причем тут nodejs? Да так вышло что в большом проекте написанном на nodejs и использующем Freeswitch и его модуль portaudio в связи с некорректной работой последнего потребовалось внедрить другой sip клиент для аудио звонков.

Выбор в ходе технического совещания одного из наших разработчиков с гуглом пал на Baresip.

Подробности
Total votes 13: ↑12 and ↓1+11
Comments9

DIY кнопка вызова часть 2. Видеофон из Raspberry Pi

Reading time7 min
Views9.8K
В этой части делаем из Raspberry Pi VoIP устройство для осуществления видео вызовов по SIP протоколу.

Первоначальная задача осталась прежней — осуществление вызова по внешнему воздействию (нажатию кнопки). Но немного изменилась реализация идеи. Как и в предыдущей части, воспользуемся терминальным SIP клиентом Linphonec, но в целях упрощения настройки, я решил воспользоваться VoIP провайдером Zadarma.com с бесплатными внутрисетевыми звонками, в том числе c поддержкой видео. Для видео звонков я использовал бюджетную USB камеру.

Подробности, а также пошаговая инструкция под катом.
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments15

Asterisk. Начало

Reading time10 min
Views153K
На написание этой статьи меня побудило практически полное отсутствие how-to по настройке Астериска, с понятными новичку примерами. В сети можно найти кучу информации по настройке IVR, по настройке авторизации SIP-пользователей через LDAP, мануалов по созданию HA-кластеров с Астерисками внутри, etc., но нет ни одной статьи о том, как завести его с нуля, да и еще с примерами. Практически везде предлагается сразу же использовать все возможности, которые предлагает Астериск, а если убрать часть функционала, предлагаемого в мануале, то в большинстве случаев это приведет к получению неработоспособной конструкции. Эта статья — результат хождения по граблям… чтения мануалов. Если вы находитесь в такой же ситуации, что и я пару лет назад — добро пожаловать под кат.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments40
1
23 ...

Information

Rating
4,319-th
Registered
Activity