0.70 saniye civarında veriyor.
#!/usr/bin/env python3
import time,sys;from urllib.parse import urljoin;import requests;from requests.adapters import HTTPAdapter
def get_first_redirect_url(u,t=(2,3)):
s=requests.Session();a=HTTPAdapter(pool_connections=1,pool_maxsize=1,max_retries=0);[s.mount(x,a) for x in['http://','https://']]
s.headers.update({"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"})
for m,to in[("HEAD",(1,2)),("GET",t)]:
try: r=s.request(m,u,allow_redirects=False,timeout=to,stream=False);break
except requests.RequestException as e:
if m=="GET":raise e
st=r.status_code;loc=r.headers.get("Location")
if 300<=st<400 and loc:return urljoin(r.url,loc)
return None
def main():
try:
u=input("Kontrol edilecek URL: ").strip()
if not u:print("Boş URL veremezsiniz.");sys.exit(1)
t0=time.time();r=get_first_redirect_url(u);t1=time.time()
et=t1-t0
if not r:print("Redirect yok veya Location header bulunamadı.");print(f"\033[92mİşlem süresi: {et:.2f} saniye\033[0m");return
print("\nİlk redirect URL (url1 -> url2):");print(r)
print(f"\n\033[92mİşlem süresi: {et:.2f} saniye\033[0m")
except requests.RequestException as e:print(f"Hata: {e}")
except KeyboardInterrupt:print("\nİptal edildi.")
if __name__=="__main__":main()