Подбор пароля к zip-файлу в Python
Код из видео:
from tqdm import tqdm
import zipfile
wordlist = ''
zip_file = ''
zip_file = zipfile.ZipFile(zip_file)
n_words = len(list(open(wordlist, "rb")))
with open(wordlist, "rb") as wordlist:
for word in tqdm(wordlist, total=n_words, unit="word"):
try:
zip_file.extractall(pwd=word.strip())
except:
continue
else:
print("Пароль найден:", word.decode().strip())
exit(0)
print("Пароль не найден :(")
Код из видео:
from tqdm import tqdm
import zipfile
wordlist = ''
zip_file = ''
zip_file = zipfile.ZipFile(zip_file)
n_words = len(list(open(wordlist, "rb")))
with open(wordlist, "rb") as wordlist:
for word in tqdm(wordlist, total=n_words, unit="word"):
try:
zip_file.extractall(pwd=word.strip())
except:
continue
else:
print("Пароль найден:", word.decode().strip())
exit(0)
print("Пароль не найден :(")
👍19
Справочник Программиста
Не волнуйтесь, это последнее видео по PowerPoint))
Точнее уроков новых по нему не будет, но сборник обязательно надо выложить))
Времени не было снять что-то новое, поэтому выходит сборник)
https://youtu.be/tZupGQC6L8w
Времени не было снять что-то новое, поэтому выходит сборник)
https://youtu.be/tZupGQC6L8w
👍7😁2🤔1
Подбор пароля к pdf-документу в Python
Код из видео:
import pikepdf
from tqdm import tqdm
passwords = [line.strip() for line in open("passwords.txt", encoding='UTF-8')]
for password in tqdm(passwords, "Расшифровка PDF-файла"):
try:
with pikepdf.open("pdfTest.pdf", password=password) as pdf:
print("Пароль найден:", password)
break
except pikepdf._qpdf.PasswordError:
continue
Код из видео:
import pikepdf
from tqdm import tqdm
passwords = [line.strip() for line in open("passwords.txt", encoding='UTF-8')]
for password in tqdm(passwords, "Расшифровка PDF-файла"):
try:
with pikepdf.open("pdfTest.pdf", password=password) as pdf:
print("Пароль найден:", password)
break
except pikepdf._qpdf.PasswordError:
continue
👍16
Запись определённого окна на видео в python
Код из видео:
import cv2
import numpy as np
import pyautogui
import pygetwindow as gw
window_name = 'путь к файлу'
fourcc = cv2.VideoWriter_fourcc(*"XVID")
fps = 30.0
record_seconds = 15
w = gw.getWindowsWithTitle(window_name)[0]
w.activate()
out = cv2.VideoWriter("output.avi", fourcc, fps, tuple(w.size))
for i in range(int(record_seconds * fps)):
img = pyautogui.screenshot(region=(w.left, w.top, w.width, w.height))
frame = np.array(img)
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
out.write(frame)
cv2.imshow("screenshot", frame)
if cv2.waitKey(1) == ord("q"):
break
cv2.destroyAllWindows()
out.release()
Код из видео:
import cv2
import numpy as np
import pyautogui
import pygetwindow as gw
window_name = 'путь к файлу'
fourcc = cv2.VideoWriter_fourcc(*"XVID")
fps = 30.0
record_seconds = 15
w = gw.getWindowsWithTitle(window_name)[0]
w.activate()
out = cv2.VideoWriter("output.avi", fourcc, fps, tuple(w.size))
for i in range(int(record_seconds * fps)):
img = pyautogui.screenshot(region=(w.left, w.top, w.width, w.height))
frame = np.array(img)
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
out.write(frame)
cv2.imshow("screenshot", frame)
if cv2.waitKey(1) == ord("q"):
break
cv2.destroyAllWindows()
out.release()
👍8🔥1
Парсинг javascript и css с сайта с помощью python
Код из видео:
import requests
from bs4 import BeautifulSoup as bs
from urllib.parse import urljoin
url = "ссылка_на_сайт"
session = requests.Session()
session.headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"
html = session.get(url).content
soup = bs(html, "html.parser")
script_files = []
for script in soup.find_all("script"):
if script.attrs.get("src"):
script_url = urljoin(url, script.attrs.get("src"))
script_files.append(script_url)
css_files = []
for css in soup.find_all("link"):
if css.attrs.get("href"):
css_url = urljoin(url, css.attrs.get("href"))
css_files.append(css_url)
print("Общее количество файлов скриптов на странице:", len(script_files))
print("Общее количество CSS-файлов на странице:", len(css_files))
with open("javascript_files.txt", "w") as f:
for js_file in script_files:
print(js_file, file=f)
with open("css_files.txt", "w") as f:
for css_file in css_files:
print(css_file, file=f)
Код из видео:
import requests
from bs4 import BeautifulSoup as bs
from urllib.parse import urljoin
url = "ссылка_на_сайт"
session = requests.Session()
session.headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"
html = session.get(url).content
soup = bs(html, "html.parser")
script_files = []
for script in soup.find_all("script"):
if script.attrs.get("src"):
script_url = urljoin(url, script.attrs.get("src"))
script_files.append(script_url)
css_files = []
for css in soup.find_all("link"):
if css.attrs.get("href"):
css_url = urljoin(url, css.attrs.get("href"))
css_files.append(css_url)
print("Общее количество файлов скриптов на странице:", len(script_files))
print("Общее количество CSS-файлов на странице:", len(css_files))
with open("javascript_files.txt", "w") as f:
for js_file in script_files:
print(js_file, file=f)
with open("css_files.txt", "w") as f:
for css_file in css_files:
print(css_file, file=f)
👍12
Извлекаем кадры из видео в Python
Код из видео:
from moviepy.editor import VideoFileClip
import numpy as np
import os
from datetime import timedelta
SAVING_FRAMES_PER_SECOND = 10
def format_timedelta(td):
result = str(td)
try:
result, ms = result.split(".")
except ValueError:
return result + ".00".replace(":", "-")
ms = round(int(ms) / 10000)
return f"{result}.{ms:02}".replace(":", "-")
def main(video_file):
video_clip = VideoFileClip(video_file)
filename, _ = os.path.splitext(video_file)
if not os.path.isdir(filename):
os.mkdir(filename)
saving_frames_per_second = min(video_clip.fps, SAVING_FRAMES_PER_SECOND)
step = 1 / video_clip.fps if saving_frames_per_second == 0 else 1 / saving_frames_per_second
for current_duration in np.arange(0, video_clip.duration, step):
frame_duration_formatted = format_timedelta(timedelta(seconds=current_duration)).replace(":", "-")
frame_filename = os.path.join(filename, f"frame{frame_duration_formatted}.jpg")
video_clip.save_frame(frame_filename, current_duration)
video_file = 'путь_до_видео'
main(video_file)
Код из видео:
from moviepy.editor import VideoFileClip
import numpy as np
import os
from datetime import timedelta
SAVING_FRAMES_PER_SECOND = 10
def format_timedelta(td):
result = str(td)
try:
result, ms = result.split(".")
except ValueError:
return result + ".00".replace(":", "-")
ms = round(int(ms) / 10000)
return f"{result}.{ms:02}".replace(":", "-")
def main(video_file):
video_clip = VideoFileClip(video_file)
filename, _ = os.path.splitext(video_file)
if not os.path.isdir(filename):
os.mkdir(filename)
saving_frames_per_second = min(video_clip.fps, SAVING_FRAMES_PER_SECOND)
step = 1 / video_clip.fps if saving_frames_per_second == 0 else 1 / saving_frames_per_second
for current_duration in np.arange(0, video_clip.duration, step):
frame_duration_formatted = format_timedelta(timedelta(seconds=current_duration)).replace(":", "-")
frame_filename = os.path.join(filename, f"frame{frame_duration_formatted}.jpg")
video_clip.save_frame(frame_filename, current_duration)
video_file = 'путь_до_видео'
main(video_file)
👍19
У меня есть парочка новостей.
1. Спустя месяц я наконец-то закончил работу над курсом по библиотеке tkinter, и Вы можете приобрести его на boosty.
Первую неделю кстати будет скидка, и вместо 1000 рублей он будет стоить 500.
Подробное описание курса есть на моём сайте: https://it-start.online/kursy/sozdanie-graficheskogo-interfejsa-v-python-3-s-tkinter
boosty: https://boosty.to/it_start
2. Да, я зарегистрировался в boosty, и теперь все, кто хотел бы меня поддержать могут это сделать там.
В зависимости от уровня подписки Вам будут доступны различные бонусы. Например, всего за 150 рублей Вы сможете
смотреть видео на пару дней, а то и недель раньше, чем на ютубе (там кстати сейчас видео вышло про создание кейлоггера на python).
3. Для тех, кто хочет получить код приложения Операционной Системы на python есть отличная новость. Набрав 10 платных подписчиков,
я выложу код на boosty (и кстати, скоро 3 часть по данному приложению, все последующие обновления кода я тоже буду выкладывать на boosty).
1. Спустя месяц я наконец-то закончил работу над курсом по библиотеке tkinter, и Вы можете приобрести его на boosty.
Первую неделю кстати будет скидка, и вместо 1000 рублей он будет стоить 500.
Подробное описание курса есть на моём сайте: https://it-start.online/kursy/sozdanie-graficheskogo-interfejsa-v-python-3-s-tkinter
boosty: https://boosty.to/it_start
2. Да, я зарегистрировался в boosty, и теперь все, кто хотел бы меня поддержать могут это сделать там.
В зависимости от уровня подписки Вам будут доступны различные бонусы. Например, всего за 150 рублей Вы сможете
смотреть видео на пару дней, а то и недель раньше, чем на ютубе (там кстати сейчас видео вышло про создание кейлоггера на python).
3. Для тех, кто хочет получить код приложения Операционной Системы на python есть отличная новость. Набрав 10 платных подписчиков,
я выложу код на boosty (и кстати, скоро 3 часть по данному приложению, все последующие обновления кода я тоже буду выкладывать на boosty).
👍13