Скачиваем вебсайты целиком
Максимально простой, но при этом мощный пакет
Функция
А вот
Но здесь надо быть аккуратнее, подобная рекурсивная загрузка отправит много запросов к серверу и может сильно нагрузить его, если на сайте много страниц.
#pywebcopy
Максимально простой, но при этом мощный пакет
pywebcopy
поможет вам клонировать отдельные веб-страницы или даже целые сайты. Функция
save_webpage
скачивает страницу по указанной ссылке, в аргументы также можно передать путь, куда сохранить результат. А вот
save_website
дает возможность скачать целый вебсайт рекурсивно. Например, если сайт представляет из себя блог, то скрипт скачет все статьи, которые есть на сайте. Но здесь надо быть аккуратнее, подобная рекурсивная загрузка отправит много запросов к серверу и может сильно нагрузить его, если на сайте много страниц.
#pywebcopy
Работаем с атрибутами объектов
Помимо привычного обращения к атрибутам объектов через точку, в Python есть 4 специальных функции:
По названиям можно понять, что первые три отвечают за получение, установку и удаление атрибута. А последний проверяет, существует ли атрибут с указанным названием у объекта или нет.
Во всех функциях первыми двумя аргументами идут объект и название атрибута в виде строки. В
На практике использование подобного — довольно редкий случай, но иногда может сильно выручить, так что берите на вооружение.
#классы #атрибуты
Помимо привычного обращения к атрибутам объектов через точку, в Python есть 4 специальных функции:
getattr
, setattr
, delattr
и hasattr
.По названиям можно понять, что первые три отвечают за получение, установку и удаление атрибута. А последний проверяет, существует ли атрибут с указанным названием у объекта или нет.
Во всех функциях первыми двумя аргументами идут объект и название атрибута в виде строки. В
setattr
также нужно передать новое значение для атрибута.На практике использование подобного — довольно редкий случай, но иногда может сильно выручить, так что берите на вооружение.
#классы #атрибуты
Выделение базовой части слов
При обработки естественного языка в машинном обучении мы сталкиваемся с множеством форм слова, например, демократия и демократизация. Для машин очень важно понимать, что эти разные слова имеют одинаковую базовую форму.
Таким образом, было бы полезно при анализе текста извлекать базовые формы слов. Можно сказать, что для процесса выделения базовой части слова необходимо обрезать концы слов.
В модуле Python NLTK (Natural Language Toolkit Package) есть различные пакет, связанные с данным процессом выделения базовой части и использующие разные алгоритмы.
Один за пакетов,
#snowball
При обработки естественного языка в машинном обучении мы сталкиваемся с множеством форм слова, например, демократия и демократизация. Для машин очень важно понимать, что эти разные слова имеют одинаковую базовую форму.
Таким образом, было бы полезно при анализе текста извлекать базовые формы слов. Можно сказать, что для процесса выделения базовой части слова необходимо обрезать концы слов.
В модуле Python NLTK (Natural Language Toolkit Package) есть различные пакет, связанные с данным процессом выделения базовой части и использующие разные алгоритмы.
Один за пакетов,
snowball
, использует алгоритм соответственно Snowball
, разработанный Мартином Портером. Алгоритм поддерживает большинство популярных языков. Подробнее об алгоритме можно почитать тут.#snowball
Делаем планировщик задач
К моему удивлению, далеко не все знают про пакет
Основной его плюс в том, что он максимально интуитивный и имеет гибкий функционал. А еще
Здесь на самом деле даже объяснять особо нечего, логика методов в этом пакете понятна на примерах.
#schedule
К моему удивлению, далеко не все знают про пакет
schedule
, который позволяет планировать задачи и повторять их через промежуток времени. Основной его плюс в том, что он максимально интуитивный и имеет гибкий функционал. А еще
schedule
не требует внешних зависимостей и сам в целом легковесный. Здесь на самом деле даже объяснять особо нечего, логика методов в этом пакете понятна на примерах.
#schedule
🔥 Полезные библиотеки Python
AniPortrait — Python инструмент для создания высококачественной анимации на основе звука и портретного изображения.
📂 GitHub/Инструкция
#python #soft #github
AniPortrait — Python инструмент для создания высококачественной анимации на основе звука и портретного изображения.
📂 GitHub/Инструкция
#python #soft #github
🔥 Полезные библиотеки Python
PrivatePing — защищённое приложение для переписки, разработанное на базе Python Django.
Пользователям доступна функция регистрации, безопасного доступа к своему аккаунту и обмена зашифрованными сообщениями.
PrivatePing гарантирует сквозное шифрование, анонимность при входе в систему и надёжную аутентификацию.
📂 GitHub/Инструкция
Пробуем тут
#python #soft #github
PrivatePing — защищённое приложение для переписки, разработанное на базе Python Django.
Пользователям доступна функция регистрации, безопасного доступа к своему аккаунту и обмена зашифрованными сообщениями.
PrivatePing гарантирует сквозное шифрование, анонимность при входе в систему и надёжную аутентификацию.
📂 GitHub/Инструкция
Пробуем тут
#python #soft #github
Query JSON
JMESpath – это язык запросов для JSON, который позволяет получать необходимые данные из документа или словаря JSON. Библиотека доступна как для Python, так и для других ЯП, что расширяет ее возможности.
#библиотеки
JMESpath – это язык запросов для JSON, который позволяет получать необходимые данные из документа или словаря JSON. Библиотека доступна как для Python, так и для других ЯП, что расширяет ее возможности.
#библиотеки
🔥 Полезные библиотеки Python
LeakSearch — простой в использовании, удобный инструмент для поиска утекших в сеть паролей по базам(ProxyNova, LocalFile).
Поддерживаем поиск по ключевым словам, домены, пользователи и т.д., экспорт файлов в JSON или TXT.
Установка:
Использование:
⚙️ GitHub/Инструкция
#python #soft #github
LeakSearch — простой в использовании, удобный инструмент для поиска утекших в сеть паролей по базам(ProxyNova, LocalFile).
Поддерживаем поиск по ключевым словам, домены, пользователи и т.д., экспорт файлов в JSON или TXT.
Установка:
$ git clone https://github.com/JoelGMSec/LeakSearch
$ cd LeakSearch
$ pip install -r requirements.txt
Использование:
$ python LeakSearch.py
⚙️ GitHub/Инструкция
#python #soft #github
Функция shorten()
Функция shorten() модуля textwrap усекает заданный текст, чтобы он поместился в заданную ширину width.
Сначала все пробелы заменяются одиночными пробелами. Если результат соответствует ширине, он возвращается. В противном случае с конца отбрасывается слова, чтобы оставшийся текст плюс заполнитель placeholder (по умолчанию [...]) поместились в указанную ширину width.
Функция shorten() модуля textwrap усекает заданный текст, чтобы он поместился в заданную ширину width.
Сначала все пробелы заменяются одиночными пробелами. Если результат соответствует ширине, он возвращается. В противном случае с конца отбрасывается слова, чтобы оставшийся текст плюс заполнитель placeholder (по умолчанию [...]) поместились в указанную ширину width.
🔥 Полезные библиотеки Python
Requests-HTML — максимально простая и интуитивно понятная библиотека для парсинга html включая асинхронный парсинг.
Установка:
Пример использования:
1️⃣
2️⃣
Из коробки поддерживает сохранение cookie файлов, имитирует user-agent, асинхронные запросы, JavaScript и д.р. плюшки.
⚙️ GitHub/Инструкция
#python #github #soft
Requests-HTML — максимально простая и интуитивно понятная библиотека для парсинга html включая асинхронный парсинг.
Установка:
$ pip install requests-html
Пример использования:
1️⃣
from requests_html import HTMLSession
session = HTMLSession()
r = session.get('https://python.org/')
2️⃣
from requests_html import AsyncHTMLSession
asession = AsyncHTMLSession()
async def get_pythonorg():
r = await asession.get('https://python.org/')
return r
async def get_reddit():
r = await asession.get('https://reddit.com/')
return r
async def get_google():
r = await asession.get('https://google.com/')
return r
results = asession.run(get_pythonorg, get_reddit, get_google)
results # check the requests all returned a 200 (success) code
[<Response [200]>, <Response [200]>, <Response [200]>]
for result in results:
print(result.html.url)
Из коробки поддерживает сохранение cookie файлов, имитирует user-agent, асинхронные запросы, JavaScript и д.р. плюшки.
⚙️ GitHub/Инструкция
#python #github #soft
🔥 Полезные библиотеки Python
MusicBot — интересный проект музыкального бота для Discord. Воспроизводит запрошенные песни с YouTube и других сервисов на сервере или нескольких серверах Discord. Кроме того, если очередь становится пустой, MusicBot проиграет список существующих песен с конфига.
Бот также позволяет конфигурировать права доступа для назначения ограничений различным пользователям.
⚙️GitHub/Инструкция
#python
MusicBot — интересный проект музыкального бота для Discord. Воспроизводит запрошенные песни с YouTube и других сервисов на сервере или нескольких серверах Discord. Кроме того, если очередь становится пустой, MusicBot проиграет список существующих песен с конфига.
Бот также позволяет конфигурировать права доступа для назначения ограничений различным пользователям.
⚙️GitHub/Инструкция
#python
Time it
Библиотека
Очень полезно сравнивать небольшие фрагменты кода и различные функции, но с большим кодом это может быть медленно.
Посмотрите пример на картинке, демонстрирующий разницу во времени выполнения двух очень похожих методов работы со списками.
Библиотека
timeit
отлично подходит для определения времени выполнения программ на Python. Просто передайте функцию в строковом формате методу timeit.timeit()
, и он сделает миллион выполнений, чтобы узнать минимальное время выполнения кода.Очень полезно сравнивать небольшие фрагменты кода и различные функции, но с большим кодом это может быть медленно.
Посмотрите пример на картинке, демонстрирующий разницу во времени выполнения двух очень похожих методов работы со списками.
Воспроизведение аудио
Собственная библиотека ОС Python также способна воспроизводить аудиофайлы. Если у вас есть проигрыватель по умолчанию, такой как VLC, он автоматически воспроизводит звук в этой программе.
Это можно легко использовать для создания сценариев, таких как супер крутой персональный будильник, предупреждение о сидячем положении, напоминание, программы мотивации и т.д.
Собственная библиотека ОС Python также способна воспроизводить аудиофайлы. Если у вас есть проигрыватель по умолчанию, такой как VLC, он автоматически воспроизводит звук в этой программе.
Это можно легко использовать для создания сценариев, таких как супер крутой персональный будильник, предупреждение о сидячем положении, напоминание, программы мотивации и т.д.