PYTHON
1 subscriber
9 photos
1 file
3 links
🧑🏻‍💻Администрация: @remerpython

🧑🏻‍💻Помощь по коду : @moderpython

🤝🏻Сотрудничество писать: @moderpython

💸Покупка рекламы: @remerpython
Download Telegram
Channel created
Привет дорогой гость этот канал создан для тех кто только начинает обучения на языке Python если ты не новичок тебе не сюда 😄
А если ты только начел обучение тогда смотри ниже и находи то что тебе нужен
PYTHON pinned «Привет дорогой гость этот канал создан для тех кто только начинает обучения на языке Python если ты не новичок тебе не сюда 😄 А если ты только начел обучение тогда смотри ниже и находи то что тебе нужен »
#часть 1
Что такое язык python
Python - высокоуровневый язык программирования общего назначения с динамической строгой типизацией и автоматическим управлением памятью, ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ
Python был создан в 1989–1991 годах
И в 2023 занимает 2 место по языкам
#часть 2
Начнём урок по python

1. Получаем гласные

Этот пример возвращает в строке найденные гласные "a e i o u". Это может оказаться полезным при поиске или обнаружении гласных
def get_vowels(String):
return [each for each in String if each in "aeiou"]
get_vowels("animal") # [a, i, a]
get_vowels("sky") # []
get_vowels("football") # [o, o, a]
2. Первая буква в верхнем регистре

Этот пример используется для превращения каждой первой буквы символов строки в прописную букву. Он работает со строкой из одного или нескольких символов и будет полезен при анализе текста или записи данных в файл и т.п
def capitalize(String):
return String.title()
capitalize("shop") # [Shop]
capitalize("python programming") # [Python Programming]
capitalize("how are you!") # [How Are You!]
3. Печать строки N раз

Этот пример может печатать любую строку n раз без использования циклов Python
n=5
string="Hello World "
print(string * n)
4. Объединяем два словаря

Этот пример выполняет слияние двух словарей в один
def merge(dic1,dic2):
dic3=dic1.copy()
dic3.update(dic2)
return dic3
dic1={1:"hello", 2:"world"}
dic2={3:"Python", 4:"Programming"}
merge(dic1,dic2) # {1: 'hello', 2: 'world', 3: '
5. Вычисляем время выполнения

Этот пример полезен, когда вам нужно знать, сколько времени требуется для выполнения программы или функции
import time
start_time= time.time()
def fun():
a=2
b=3
c=a+b
end_time= time.time()
fun()
timetaken = end_time - start_time
print("Your program takes: ", timetaken) # 0.0345
#часть 3
Всем добрый день сегодня будем изучать

Как сделать бота для скачивания видео из YouTube

1 делом создаём бота в
@BotFather

Для создания бота пишите команду /newbot
После чего вам напишут:
Alright, a new bot. How are we going to call it? Please choose a name for your bot

Задаём любую ник для бота к типу Youtube downloader

После чего вам нужно сделать ссылку на бота (youtubebot)

Начнем создание бота

1: скачеваем библиотеку
pygram
youtube_dl
Комманду ведите в cmd и внутри python:

pip install pyrogram

pip install youtube_dl

Вот и всё :) Больше нам пока что ничего не понадобится
Кодим. Оболочка бота

Сперва создадим youtube.py
Это будет наш ключевой файл, в котором будет содержаться "оболочка" бота.

Вы должны вставить свой токен, который вы получите от @BotFather.

from pyrogram.handlers import MessageHandler
import time
from pyrogram import Client, filters
import logging
import requests
import download
import random
import os
import validation
logging.basicConfig(level=logging.INFO)
bot = Client(
"ses1",
api_id=348759,
api_hash="5dc6f4b54b1985199b42a069a5745306",
workers = 5,
bot_token='1635563068:AAFBGsHY9b-ySQMLwedNrXUB8ErlGqpqoYk'
)


Отлично! Теперь создаём команду, чтобы бот отвечал
@bot.on_message(filters.command("start", ["!", "/"]))
def connect(chat, m):
try:
userID = m.chat.id
bot.send_message(userID, 'Привет! Я умею скачивать видео из YouTube.')
except Exception as e:
print(e)
Теперь бот научился здороваться. Можно научить и видео обрабатывать

bot.on_message(filters.text)
def get(chat, m):
url=m.text
userID = m.chat.id
try:
VID_ID = ''
VID_ID = validation.to_valid(url, VID_ID) #валидация регуляркой из validation.py
bot.send_message(m.chat.id, 'Начинаем загрузку видео...')
download.worker(VID_ID) #скачивание видео
bot.send_video(m.chat.id, str(VID_ID) + '.mp4')
os.remove(VID_ID + '.mp4')

except Exception as e:
bot.send_message(m.chat.id, f'Что-то пошло не так! Ошибка
{e}')
Проверка ссылки

Пока что мы хотим скачивать видео только из YouTube

Именно поэтому стоит добавить проверку. Она будет валидировать видео, то есть проверять, какая это ссылка и ссылка ли вообще.

Будем стараться на каждый логический этап создавать новый файл. Поэтому создадим validation.py

import re
def to_valid(url, VID_ID):
youtube_urls_test = ['']
youtube_urls_test.pop(0)
youtube_urls_test.append(url)
youtube_regex = (
r'(https?://)?(www\.)?'
'(youtube|youtu|youtube-nocookie)\.(com|be)/'
'(watch\?v=|embed/|v/|.+\?v=)?([^&=%\?]{11})')
youtube_regex_match = re.match(youtube_regex, url)
VID_ID = youtube_regex_match.group(6)
if youtube_regex_match != None:
return VID_ID
else:
raise Exception('NOT_VALID_URL')