first commit
This commit is contained in:
74
main.py
Normal file
74
main.py
Normal file
@@ -0,0 +1,74 @@
|
||||
from rich import console
|
||||
from rich.console import Console
|
||||
from rich.panel import Panel
|
||||
from rich.table import Table
|
||||
from rich.progress import track
|
||||
from selenium import webdriver
|
||||
from selenium.webdriver.common.by import By
|
||||
import time
|
||||
import re
|
||||
|
||||
# driver = webdriver.Chrome()
|
||||
# driver.get("https://muzpab.xn--41a.ws/")
|
||||
# time.sleep(1)
|
||||
# search = driver.find_element(By.NAME, "q")
|
||||
# search.send_keys("Апалогия Время")
|
||||
# search.submit()
|
||||
# print(driver.find_element(By.CLASS_NAME, "artist_name").text)
|
||||
# button = driver.find_element(By.CLASS_NAME, "downloadbtn")
|
||||
# button.click()
|
||||
# time.sleep(1)
|
||||
# button = driver.find_element(By.CLASS_NAME, "__download_btn")
|
||||
# button.click()
|
||||
# print("Скачивание началось")
|
||||
# time.sleep(10)
|
||||
|
||||
def normalize(text):
|
||||
# 1. нижний регистр
|
||||
text = text.lower()
|
||||
|
||||
# 2. заменить тире на пробел
|
||||
text = text.replace("—", " ").replace("-", " ")
|
||||
|
||||
# 3. убрать всё кроме букв и цифр
|
||||
text = re.sub(r"[^\w\s]", "", text)
|
||||
|
||||
# 4. разбить на слова и отсортировать
|
||||
words = text.split()
|
||||
words.sort()
|
||||
|
||||
return words
|
||||
|
||||
driver = webdriver.Chrome()
|
||||
driver.get("https://muzpab.xn--41a.ws/")
|
||||
file = open("music.txt", "r", encoding="utf-8")
|
||||
new_file = open("new_music.txt", "w", encoding="utf-8")
|
||||
console = Console()
|
||||
table = Table(title="Музыка для поиска")
|
||||
table.add_column("Номер трека", justify="center", style="cyan", no_wrap=True)
|
||||
table.add_column("Название трека", justify="center")
|
||||
table.add_column("Найденный трек", justify="center")
|
||||
i = 1
|
||||
for line in file:
|
||||
sound_name = line.split(".")[1].strip()
|
||||
sound_name_normalized = normalize(sound_name)
|
||||
console.print(f"Ищем трек: {sound_name}")
|
||||
search = driver.find_element(By.NAME, "q")
|
||||
search.send_keys(sound_name)
|
||||
search.submit()
|
||||
track = driver.find_elements(By.CLASS_NAME, "artist_name")
|
||||
track_normalized = normalize(track[0].text)
|
||||
if track_normalized == sound_name_normalized:
|
||||
console.print(f"Найден трек: [green]{track[0].text}[/green]")
|
||||
table.add_row(str(i), sound_name, f"[green]{track[0].text}[/green]")
|
||||
else:
|
||||
console.print(f"Найден трек: [red]{track[0].text}[/red]")
|
||||
table.add_row(str(i), sound_name, f"[red]{track[0].text}[/red]")
|
||||
|
||||
new_file.write(track[0].text + "\n")
|
||||
i += 1
|
||||
console.clear()
|
||||
console.print(table)
|
||||
|
||||
|
||||
new_file.close()
|
||||
Reference in New Issue
Block a user