8 крутых скриптов Python, которые скрасят ваш день.
Эти маленькие драгоценные камни добавят немного веселья в ваши проекты по программированию.
1. Тест скорости *изображение 1.
2. Конвертация фотографии в мультяшный формат *изображение 2.
3. Вывод статуса сайта *изображение 3.
4. Улучшение изображений *изображение 4.
5. Создание веб-бота *изображение 5.
6. Преобразование: Hex в RGB *изображение 6.
7. Преобразование PDF в изображения *изображение 7.
8. Получить текст песни *изображение 8.
@pythonl
Please open Telegram to view this post
    VIEW IN TELEGRAM
  Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍27❤10👎4🔥4
  Создание и работа с excel-файлами с помощью python-скрипта.
from openpyxl import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.styles import Font
#making the grid and giving the data
data = {
 "Joe": {
  "math": 65,
  "science": 78,
  "english": 98,
  "gym": 89
 },
 "Bill": {
  "math": 55,
  "science": 72,
  "english": 87,
  "gym": 95
 },
 "Tim": {
  "math": 100,
  "science": 45,
  "english": 75,
  "gym": 92
 },
 "Sally": {
  "math": 30,
  "science": 25,
  "english": 45,
  "gym": 100
 },
 "Jane": {
  "math": 100,
  "science": 100,
  "english": 100,
  "gym": 60
 }
}
wb = Workbook()
ws = wb.active
#assigning the title
ws.title = "Grades"
#giving proper formatting for columns 
headings = ['Name'] + list(data['Joe'].keys())
ws.append(headings)
#reading the data for persom
for person in data:
 grades = list(data[person].values())
 ws.append([person] + grades)
for col in range(2, len(data['Joe']) + 2):
 char = get_column_letter(col)
 ws[char + "7"] = f"=SUM({char + '2'}:{char + '6'})/{len(data)}"
#assigning the colour and text type 
for col in range(1, 6):
 ws[get_column_letter(col) + '1'].font = Font(bold=True, color="0099CCFF")
#saving the excel file in the same folder
wb.save("NewGrades.xlsx")@pythonl
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍20🔥2🤩2❤1🎉1
  This media is not supported in your browser
    VIEW IN TELEGRAM
  🔥🔥 VideoCrafter:A Toolkit for Text-to-Video Generation and Editing
A Toolkit for Text-to-Video Generation and Editing
Опенсоурс алгоритм для генерации видеоконтента и преобразования текста в видео.
•Github
•Colab
@pythonl
A Toolkit for Text-to-Video Generation and Editing
Опенсоурс алгоритм для генерации видеоконтента и преобразования текста в видео.
•Github
•Colab
@pythonl
👍10🔥5❤3
  Лучший способ получать свежие обновлении и следить за трендами в разработке.
Машинное обучение: t.iss.one/ai_machinelearning_big_data
Python: t.iss.one/pro_python_code
C#: t.iss.one/csharp_ci
C/C++/ t.iss.one/cpluspluc
Data Science: t.iss.one/data_analysis_ml
Devops: t.iss.one/devOPSitsec
Go: t.iss.one/Golang_google
Базы данных: t.iss.one/sqlhub
Rust: t.iss.one/rust_code
Javascript: t.iss.one/javascriptv
React: t.iss.one/react_tg
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Мобильная разработка: t.iss.one/mobdevelop
Linux: t.iss.one/+A8jY79rcyKJlYWY6
Big Data: t.iss.one/bigdatai
Хакинг: t.iss.one/linuxkalii
Тестирование: https://t.iss.one/+F9jPLmMFqq1kNTMy
Java: t.iss.one/javatg
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
🇬🇧Английский: t.iss.one/english_forprogrammers
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6🔥5❤2👎1
  🐍Ten New Features of Python 3.11 That Make Your Code More Efficient
10 новых возможностей Python 3.11, которые сделают ваш код более эффективным.
01 Pattern Matching
*изображение 1.
02 Structural Pattern Matching
*изображение 2.
03 Type Hints and Checks
*изображение 3.
04 Оптимизация производительности
*изображение 4.
05 Улучшения отчетов об ошибках
*изображение 5.
06 Новая стандартная библиотека zoneinfo
*изображение 6.
07 iterate
*изображение 7.
08 Merge Dictionary Operator
*изображение 8.
09 Новая функция точки прерывания отладки
*изображение 9.
10 Синхронная итерация
*изображение 10.
@pythonl
10 новых возможностей Python 3.11, которые сделают ваш код более эффективным.
01 Pattern Matching
*изображение 1.
02 Structural Pattern Matching
*изображение 2.
03 Type Hints and Checks
*изображение 3.
04 Оптимизация производительности
*изображение 4.
05 Улучшения отчетов об ошибках
*изображение 5.
06 Новая стандартная библиотека zoneinfo
*изображение 6.
07 iterate
*изображение 7.
08 Merge Dictionary Operator
*изображение 8.
09 Новая функция точки прерывания отладки
*изображение 9.
10 Синхронная итерация
*изображение 10.
@pythonl
👍21🔥8❤5👎2
  Создание простой пользовательской формы с помощью Python и Tkinter за 5 минут - руководство для начинающих.
import openpyxl
from tkinter import *
from tkinter import messagebox
def register():
    # Get the user input from the form
    first_name = first_name_entry.get()
    Last_name = Last_name_entry.get()
    email = email_entry.get()
    Mobile = Mobile_entry.get()
    # Create a new row with the user input
    new_row = [first_name, Last_name, email,Mobile]
    # Append the new row to the Excel sheet
    workbook = openpyxl.load_workbook("registration_data.xlsx")
    sheet = workbook.active
    sheet.append(new_row)
    workbook.save("registration_data.xlsx")
    messagebox.showinfo("Success", "Registration successful!")
# Create the main tkinter window
root = Tk()
root.title("Registration Form")
root.geometry('300x300')
# Create labels and entry fields for each input
first_name_label = Label(root, text="First Name:")
first_name_label.pack()
first_name_entry = Entry(root)
first_name_entry.pack()
Last_name_label = Label(root, text="Last Name:")
Last_name_label.pack()
Last_name_entry = Entry(root)
Last_name_entry.pack()
email_label = Label(root, text="Email:")
email_label.pack()
email_entry = Entry(root)
email_entry.pack()
Mobile_label = Label(root, text="Mobile:")
Mobile_label.pack()
Mobile_entry = Entry(root)
Mobile_entry.pack()
register_button = Button(root, text="Register", command=register)
register_button.pack()
root.mainloop()@pythonl
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍21❤5🔥2
  🔥Email sender script (Selenium + Python)
Скрипт рассылки писем по Email (Selenium + Python).
@pythonl
  
  
  
  
  
Скрипт рассылки писем по Email (Selenium + Python).
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import csv
# Путь к web-driver
EXE_PATH = 'chromedriver.exe'
# Логин и пароль от вашей почты
EMAIL = [email protected]
PASSWORD  = password
        
# запускаем браузер
browser = webdriver.Chrome(executable_path=EXE_PATH)
# Переходим на страницу шаблонов mail.ru
# Сайт выдаст форму авторизации
browser.get('https://e.mail.ru/templates/')
# Выставляем тайминги задержки чтобы браузер успел прогрузить страницу
time.sleep(5)
# Теперь нам надо авторизоваться
# заполняем поле логин
emailElem = browser.find_element_by_name('username')
emailElem.send_keys(EMAIL)
emailElem.submit()
time.sleep(1)
# заполняем поле пароль
passwordElem = browser.find_element_by_name('password')
passwordElem.send_keys(PASSWORD)
passwordElem.submit()
time.sleep(5)
# Мы авторизовались, теперь тащим адреса из файла.csv 
# Содержание файла
# ФИО,Email
with open('email_list.csv', encoding="utf-8") as file:
    EMAIL_LIST = csv.reader(file)
    
    # Запускаем цикл
    for row in EMAIL_LIST:
      # Если mail что то заподозрит, то выкинет капчу, 
        # мы получаем except, ждем некоторое время, и снова отправлем письмо
        try:
          # ФИО <Email>
            email_to = row[0] + "<" + row[1] + ">"
            
            # Нажимаем кнопку шаблоны (первый в списке шаблон настраиваем заранее)       
            browser.find_element_by_xpath('//*[@id="app-canvas"]/div/div[1]/div[1]/div/div[2]/span/div[2]/div/div/div/div/div[1]/div/div/div/div[1]/div/div/a[1]').click()
            time.sleep(3)     
            
            # Заполняем поле кому
            browser.find_element_by_xpath('/html/body/div[1]/div/div[2]/div/div[1]/div[2]/div[3]/div[2]/div/div/div[1]/div/div[2]/div/div/label/div/div/input').send_keys(email_to)
            time.sleep(1)
           
            # Нажимаем кнопку отправить
            browser.find_element_by_xpath('/html/body/div[1]/div/div[2]/div/div[2]/div[1]/span[1]/span/span').click()
            time.sleep(5)
            # После отправки открывается модальное окно, закрываем его
            browser.find_element_by_xpath('/html/body/div[10]/div/div/div[2]/div[2]/div/div/div[1]/span').click()
            time.sleep(10)
            
        except Exception:
          # Сообщаем пользователю, что скрипту необходимо переждать
            print('Error! Wait 1 hour\n')
            # Ждем час (можно меньше)
            time.sleep(3600)
            
            # Снова нажимаем кнопку отправить
            browser.find_element_by_xpath('/html/body/div[1]/div/div[2]/div/div[2]/div[1]/span[1]/span/span').click()
            time.sleep(5)
            # Снова закрываем модальное окно
            browser.find_element_by_xpath('/html/body/div[10]/div/div/div[2]/div[2]/div/div/div[1]/span').click()
            time.sleep(10)
print('SUCCESS!')
time.sleep(500)@pythonl
👍18🔥4❤2