MammaMia-Urlo commited on
Commit
828e5b3
·
verified ·
1 Parent(s): f5c8fb3

Delete filmpertutti.py

Browse files
Files changed (1) hide show
  1. filmpertutti.py +0 -119
filmpertutti.py DELETED
@@ -1,119 +0,0 @@
1
-
2
- from tmdbv3api import TMDb, Movie, TV
3
- import requests
4
- from bs4 import BeautifulSoup,SoupStrainer
5
- import string
6
- import re
7
- from datetime import datetime
8
- import dateparser
9
- from convert import get_TMDb_id_from_IMDb_id
10
- from loadenv import load_env
11
- from info import get_info, is_movie
12
- from convert_date import convert_US_date
13
- import logging
14
-
15
- _, FT_DOMAIN,_,_ ,_= load_env()
16
- #Some basic headers
17
- headers = {
18
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.10; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3',
19
- 'Accept-Language': 'en-US,en;q=0.5'
20
- }
21
- #Map months to check if date = date
22
- month_mapping = {
23
- 'Jan': 'Gennaio', 'Feb': 'Febbraio', 'Mar': 'Marzo', 'Apr': 'Aprile',
24
- 'May': 'Maggio', 'Jun': 'Giugno', 'Jul': 'Luglio', 'Aug': 'Agosto',
25
- 'Sep': 'Settembre', 'Oct': 'Ottobre', 'Nov': 'Novembre', 'Dec': 'Dicembre'
26
- }
27
-
28
- def search(query,date):
29
- response = requests.get(query).json()
30
- #Get link tid of every item and then open the link to see if the date = date
31
- for json in response:
32
- link = json['link']
33
- tid = json['id']
34
- series_response = requests.get(link, headers=headers)
35
- series_soup = BeautifulSoup(series_response.text, 'lxml')
36
- release_span = series_soup.find('span', class_='released')
37
- if release_span:
38
- if release_span.text != "Data di uscita: N/A":
39
- date_string = release_span.text.split(': ')[-1] # Get the date part
40
- for eng, ita in month_mapping.items():
41
- date_string = re.sub(rf'\b{eng}\b', ita, date_string)
42
-
43
- # Swap to YY-MM-DD formatting using dateparser
44
- release_date = dateparser.parse(date_string, languages=['it']).strftime("%Y-%m-%d")
45
- if release_date == date:
46
- url = link
47
- tid = tid
48
- break
49
- return url, tid
50
-
51
- def get_episode_link(season,episode,tid,url):
52
- #Get the link from where we have to obtain mixdrop link
53
- tlink = f'{url}?show_video=true&post_id={tid}&season_id={season-1}&episode_id={episode-1}'
54
- return tlink
55
-
56
-
57
- def get_film(url):
58
- #Get the link from where we have to obtain mixdrop link
59
- tlink = url + "?show_video=true"
60
- return tlink
61
-
62
- def get_real_link(tlink):
63
- #Some basic code to get the mixdrop link
64
- page = requests.get(tlink, headers=headers)
65
- soup = BeautifulSoup(page.content, features="lxml",parse_only=SoupStrainer('iframe'))
66
- iframe_src = soup.find('iframe')['src']
67
-
68
- iframe_page = requests.get(iframe_src, headers=headers)
69
- iframe_soup = BeautifulSoup(iframe_page.content, features="lxml")
70
-
71
- mega_button = iframe_soup.find('div', attrs={'class': 'megaButton', 'rel': 'nofollow'}, string='MIXDROP')
72
- if mega_button:
73
- real_link = mega_button.get('meta-link')
74
- return real_link
75
-
76
- def get_true_link(real_link):
77
- response = requests.get(real_link, headers=headers)
78
- [s1, s2] = re.search(r"\}\('(.+)',.+,'(.+)'\.split", response.text).group(1, 2)
79
- schema = s1.split(";")[2][5:-1]
80
- terms = s2.split("|")
81
- charset = string.digits + string.ascii_letters
82
- d = dict()
83
- for i in range(len(terms)):
84
- d[charset[i]] = terms[i] or charset[i]
85
- s = 'https:'
86
- for c in schema:
87
- s += d[c] if c in d else c
88
- return s
89
-
90
- def filmpertutti(imdb):
91
- general = is_movie(imdb)
92
- ismovie = general[0]
93
- imdb_id = general[1]
94
- if ismovie == 0 :
95
- season = int(general[2])
96
- episode = int(general[3])
97
- tmdba = get_TMDb_id_from_IMDb_id(imdb_id)
98
- type = "Filmpertutti"
99
- showname,date = get_info(tmdba,ismovie,type)
100
- showname = showname.replace(" ", "+").replace("–", "+").replace("—","+")
101
- #Build the query
102
- query = f'https://filmpertutti.{FT_DOMAIN}/wp-json/wp/v2/posts?search={showname}&page=1&_fields=link,id'
103
- url,tid = search(query,date)
104
- if ismovie == 0:
105
- episode_link = get_episode_link(season,episode,tid,url)
106
- #Let's get mixdrop link
107
- real_link = get_real_link(episode_link)
108
- #let's get delivery link, streaming link
109
- streaming_link = get_true_link(real_link)
110
- print(streaming_link)
111
- return streaming_link
112
- elif ismovie == 1:
113
- film_link = get_film(url)
114
- #Let's get mixdrop link
115
- real_link = get_real_link(film_link)
116
- #let's get delivery link, streaming link
117
- streaming_link = get_true_link(real_link)
118
- print(streaming_link)
119
- return streaming_link