MissKatyPyro/misskaty/helper/subscene_helper.py
2023-05-16 07:26:32 +00:00

42 lines
1.7 KiB
Python

import cloudscraper
from bs4 import BeautifulSoup
async def down_page(url):
f = cloudscraper.create_scraper()
resp = f.get(url).text
soup = BeautifulSoup(resp, "lxml")
maindiv = soup.body.find("div", class_="subtitle").find("div", class_="top left")
title = maindiv.find("div", class_="header").h1.span.text.strip()
try:
imdb = maindiv.find("div", class_="header").h1.a["href"]
except TypeError:
imdb = ""
try:
poster = maindiv.find("div", class_="poster").a["href"]
except:
poster = ""
try:
author_name = maindiv.find("div", class_="header").ul.find("li", class_="author").a.text.strip()
author_link = f"https://subscene.com{maindiv.find('div', class_='header').ul.find('li', class_='author').a['href']}"
except:
author_link = ""
author_name = "Anonymous"
download_url = f"https://subscene.com{maindiv.find('div', class_='header').ul.find('li', class_='clearfix').find('div', class_='download').a['href']}"
try:
comments = maindiv.find("div", class_="header").ul.find("li", class_="comment-wrapper").find("div", class_="comment").text
except:
comments = ""
try:
release = maindiv.find("div", class_="header").ul.find("li", class_="release").find_all("div")
releases = ""
for i in range(2):
r = release[i].text.strip()
releases = releases + f"\n{r}"
except Exception:
releases = ""
response = {"title": title, "imdb": imdb, "poster": poster, "author_name": author_name, "author_url": author_link, "download_url": download_url, "comments": comments, "releases": releases}
return response