Пишем 3 программы на Python за пару минут

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

#1 - Перемещение файлов

Первая программа будет трансфером для файлов. Её можно применять для автоматической сортировки файлов по папкам. К примеру, через Питон программу вы отслеживаете тип файла что попал в папку «Загрузки» и далее программа автоматически перемещает файл в папку музыка, фото, программы и так далее в зависимости от типа самого файла.

Для выполнения такой программы сперва подключите библиотеку «watchdog»:

pip install watchdog


Теперь можно прописать весь код, он показан ниже вместе с комментариями:


# Подключение всех модулей
from watchdog.observers import Observer
import os
import time
# FileSystemEventHandler - класс по отслеживанию изменений
from watchdog.events import FileSystemEventHandler


# Создаем класс наследник, через него может отслеживать изменения в папках
class Handler(FileSystemEventHandler):
	# При любых изменениях в папке, мы перемещаем файлы в ней
	def on_modified(self, event):
		# Перебираем все файлы в папке folder_track
		for filename in os.listdir(folder_track):
			# Проверяем расширенеи файла
			extension = filename.split(".")
			# Если это фото,
			if len(extension) > 1 and (extension[1].lower() == "jpg" or extension[1].lower() == "png" or extension[1].lower() == "svg"):
				# то перемещаем файл в папку с фото
				file = folder_track + "/" + filename
				new_path = folder_dest + "/Photos/" + filename
				os.rename(file, new_path)
			# Если файл видео, то в папку с видео
			# Такое же можно прописать и для других расширений файлов
			elif len(extension) > 1 and extension[1].lower() == "mp4":
				file = folder_track + "/" + filename
				new_path = folder_dest + "/Videos/" + filename
				os.rename(file, new_path)


# Папка что отслеживается
folder_track = '/ПОЛНЫЙ_ПУТЬ_К_ВАШЕЙ_ПАПКЕ'
# Папка куда перемещать будем
folder_dest = '/ПОЛНЫЙ_ПУТЬ_К_ВАШЕЙ_ПАПКЕ'

# Запуск всего на отслеживание
handle = Handler()
observer = Observer()
observer.schedule(handle, folder_track, recursive=True)
observer.start()

# Программа будет срабатывать каждые 10 милисекунд 
try:
	while(True):
		time.sleep(10)
except KeyboardInterrupt:
	observer.stop()

observer.join()


#2 - Создание сервера

Наша вторая программа будет представлять из себя полноценный сервер, созданный с использованием лишь Python, без дополнительных фреймворков, по типу Django или Flask.

Что очень круто, так это то, что такой сервер можно создать используя лишь встроенные модули Python. Для этого импортируем из http.server два необходимых классах. Далее указываем «localhost» и порт по которому будем подключаться и создаем объект на основе HTTPServer. После этого запускаем сервер на постоянное выполнение.


from http.server import HTTPServer, CGIHTTPRequestHandler
server_data = ("localhost", 8080)
server = HTTPServer(server_data, CGIHTTPRequestHandler)
server.serve_forever()

Также можно добавить файл «index.html» и прописать в нем всю разметку. На странице сервера будет отображаться содержимое из этого файла.

#3 - Управление браузером

Первое что необходимо сделать, так это установить «Selenium» через терминал:

pip install selenium


Далее нужно скачать специальный веб драйвер, который обеспечит работу с вашим браузером. Его можно скачать на официальной странице Selenium. Выбираете браузер через который хотите все запускать, далее выберите последнюю стабильную версию и скачиваете драйвер под вашу операционную систему.

В программе нужно прописать полный путь к драйверу и выполнить открытие страницы:


from selenium import webdriver
browser = webdriver.Chrome('/ПУТЬ_К_ПАПКЕ_С_ДРАЙВЕРОМ/chromedriver')
browser.get("https://itproger.com")

#python

Пишем 3 программы на Python за пару минут
2.45 GEEK