Newer
Older
import urllib.parse
from pathlib import Path
import requests
from bs4 import BeautifulSoup
class TXTDownloader:
def __init__(self, sessid, outdir):
self.sessid = sessid
self.outdir = outdir
def download(self, url: str, artist: str, song: str, spotify_uri: str):
url = url.replace("detail", "gettxt")
with requests.Session() as s:
page = s.post(url, data={'wd': 1}, cookies={'PHPSESSID': self.sessid})
soup = BeautifulSoup(page.content, 'html.parser')
txt = soup.find(name="textarea").text
Path(self.outdir).mkdir(parents=True, exist_ok=True)
with open(Path(self.outdir) / f"{artist} - {song} - {spotify_uri}.txt", "w", encoding="utf-8") as f:
f.write(txt)