import re
import requests
import time
# URL i podaci za dobijanje tokena
TOKEN_URL = "
http://netiptv.eu/token"
MAC_DATA_URL = "
http://netiptv.eu/getMacData/bs:24:02:0z:uz:e7:12:54"
TOKEN_PAYLOAD = {
'grant_type': 'password',
'username': 'CemCan',
'password': 'X4rvpCDV873CPkRn'
}
TOKEN_HEADERS = {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}
MAC_DATA_HEADERS_TEMPLATE = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
"Accept": "application/json",
"Authorization": "Bearer {}"
}
OUTPUT_FILE = "NET.txt"
# Funkcija za dobijanje tokena
def get_access_token():
response = requests.post(TOKEN_URL, data=TOKEN_PAYLOAD, headers=TOKEN_HEADERS)
if response.status_code == 200:
token_data = response.json()
return token_data.get("access_token")
else:
print(f"Neuspešno dobavljanje tokena, status code: {response.status_code}")
return None
# Funkcija za dobijanje MAC podataka
def get_mac_data(token):
headers = MAC_DATA_HEADERS_TEMPLATE.copy()
headers["Authorization"] = headers["Authorization"].format(token)
response = requests.get(MAC_DATA_URL, headers=headers)
return response
# Funkcija za izdvajanje prvog URL-a iz urlList-a
def extract_first_url(response_text):
match = re.search(r'urlList":"(.*?)\\r\\n', response_text)
if match:
url_list = match.group(1)
first_url_match = re.search(r'http
?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', url_list)
if first_url_match:
return first_url_match.group()
return None
# Glavna petlja za izvršavanje upita svakih 2 sekunde
while True:
token = get_access_token()
if token:
mac_data_response = get_mac_data(token)
if mac_data_response.status_code == 200:
first_url = extract_first_url(mac_data_response.text)
if first_url:
with open(OUTPUT_FILE, 'a') as f: # Koristimo 'a' (append) mod za dodavanje na kraj datoteke
f.write(first_url + '\n')
print(f"URL je zapisan: {first_url}")
else:
print("Nije pronađen prvi URL u odgovoru")
else:
print(f"Neuspešno dobavljanje MAC podataka: {mac_data_response.status_code}")
else:
print("Neuspešno dobavljanje tokena")
time.sleep(2)