[PYTHON:TODAY]
63.3K subscribers
2.36K photos
1.07K videos
300 files
1.48K links
Python скрипты, нейросети, боты, автоматизация. Всё бесплатно!

Приват: https://boosty.to/pythontoday
YouTube: https://clck.ru/3LfJhM
Канал админа: @akagodlike
Чат: @python2day_chat

Сотрудничество: @web_runner

Канал в РКН: https://clck.ru/3GBFVm
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Helium — простая в использовании Python библиотека созданная для автоматизации работы с браузерами, такими как Chrome и Firefox.

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

Chrome, Firefox? Да хоть весь зоопарк браузеров — библиотека разбирается сама.
iFrames, новые окна, ожидания загрузки, поломанные кнопки? Helium делает всё автоматически.

⚡️ А главное — умеет аккуратно обходить капчи и проверки на ботов, превращая автоматизацию в стабильный и спокойный процесс, а не в бесконечную борьбу с сайтом.

⚙️ Установка:
$ python -m pip install helium


▶️ Простой пример использования:
# A Helium function:
driver = start_chrome()
# A Selenium API:
driver.execute_script("alert('Hi!');")


♎️ GitHub/Инструкция

#python #soft #web #github
Please open Telegram to view this post
VIEW IN TELEGRAM
👍59🔥176🤯1🫡1
💀 Как зашифровать PDF паролем с помощью Python

Готовый Python-скрипт: берёт обычный PDF и создаёт копию, защищённую паролем.

📦 Установка библиотеки
pip install PyPDF2


⌨️ Код
from __future__ import annotations
from pathlib import Path
from typing import Union

from PyPDF2 import PdfReader, PdfWriter

PDFPath = Union[str, Path]


def encrypt_pdf(input_path: PDFPath, output_path: PDFPath, password: str) -> Path:
"""
Шифрует PDF-файл паролем и сохраняет в output_path.
Возвращает путь к зашифрованному файлу.
"""
in_path = Path(input_path)
out_path = Path(output_path)

reader = PdfReader(in_path)
writer = PdfWriter()

for page in reader.pages:
writer.add_page(page)

writer.encrypt(password)

with out_path.open("wb") as f:
writer.write(f)

return out_path


def encrypt_with_suffix(input_path: PDFPath, password: str, suffix: str = "_encrypted") -> Path:
"""
Создаёт зашифрованную копию рядом с исходным файлом.
Например: secret.pdf → secret_encrypted.pdf
"""
in_path = Path(input_path)
output_path = in_path.with_name(f"{in_path.stem}{suffix}{in_path.suffix}")
return encrypt_pdf(in_path, output_path, password)


if __name__ == "__main__":
pdf_file = "secret.pdf"
pdf_password = "pythontoday"

encrypted_path = encrypt_with_suffix(pdf_file, pdf_password)
print(f"Создан зашифрованный файл: {encrypted_path}")


💡 Где будет полезно

🟢отправить клиенту документ с паролем по отдельному каналу;
🟢хранить важные PDF-ки в зашифрованном виде;
🟢встроить шифрование в свой сервис/бота/панель администратора.

#python #code #tipsandtricks
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26🔥72🫡2
🐳 Docker для самых маленьких: упаковываем Python-бота за 10 минут

💬 Когда запускаешь первого Telegram-бота локально — кажется, что ты покорил мир: нажал Run, и всё летает. Но как только закрываешь ноутбук, бот падает вместе с твоей мечтой о «стабильном продакшене».

📦 Docker решает проблему одним контейнером: берёт твой код, твои зависимости и твою среду — и запускает их одинаково везде.
Не важно где: на сервере, у друга или в облаке — контейнер работает стабильно и предсказуемо.

😰 Разберёмся, как за 10 минут упаковать Telegram-бота в Docker и перестать запускать проекты «на коленке».

👇 Код + статья в PDF на русском

#article #python #code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍111