Javascript kodunu Javascript ile işleme

<html>
	<body>
		<button type="button" id="myBtn">Click Me!</button>
	</body>

	<script>
		function onClick() {
			const http = new XMLHttpRequest();
			http.open("GET", "https://forum.yazbel.com/");
			http.send();
			
			https.onload = () => console.log(http.responseText);
		}
	
		var btn = document.getElementById("myBtn");
		btn.addEventListener("click", onClick);
	</script>
</html>

Ancak kodu çalıştırıp butona tıklayınca:

Access to XMLHttpRequest at 'https://forum.yazbel.com/' from origin 'null' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

hatası alıyorum. https://enable-cors.org/index.html sitesini buldum, biraz baktığımda ExpressJS seçeneğini gördüm. Sanırım bunu javascript ile yapmak istiyorsan bir sunucuya ihtiyacın var. Web geliştirme ile ilgili henüz pek bilgim olmadığından sadece tahminlerimi belirtebiliyorum kusura bakma.

Yukarıda yazdıklarınızdan birinde şunu gördüm:

Eğer projede java da kullanıyorsanız işin bu kısmını java ile halletmek daha mantıklı sanırım. Örneğin python da requests ile atabildiğim get isteğini javascript te deneyince bahsettiğim hatayı veriyor yani belki de java da python gibi sorunu çözebilir.

Bu arada belki işe yarar diye python da nasıl yaptığımı da göstereyim:

import requests

r = requests.get("https://forum.yazbel.com/")
print(r.content)

Dosyayı bulma durumunu için farklı çözümler bakıyorum
url değişken olduğu için tek bir url üzerinden gitmek yanlış olur
ancak XMLHttpRequest kullanarak isteğim html dosasına erişim sağlıyabilirim sanırım

Evet, ancak CORS hatasını düzeltmeniz lazım. Linkini attığım siteden çözümlere bakıp size uygun olanı deneyebilirsiniz. Ayrıca değişken url derken neyi kastediyorsunuz? Bana linkini attığınız dizi için konuşalım mesela, bu dizinin linki belirli aralıklarla değişiyor mu? Yoksa her bir dizi için başka bir linkten mi bahsediyorsunuz?

böyle bir örneğe denk geldim trafik üzerinden m3u8 urlsini buluyormuş denedim ancak olmadı kod bu

url = new URL(livetvchannel.getUrl());
InputStream M3U8 = (InputStream) url.getContent();      
BufferedReader br = new BufferedReader(new InputStreamReader(M3U8));
for(int i = 0; i < 2; ++i)
    br.readLine();
String target = br.readLine(); //this parses the third line of the playlist
br.close();
url = new URL(baseURL.concat(target)); 
//if the m3u8 url is relative, you have to concat it with the path
//Note: You have to do all this in a thread, you can't do network on UiThread


mVideoView.setVideoURI(Uri.parse(url.toString()));

evet her bir dizi için başka bir link

Bu kod Java için sanırım. Bu kod kendi başına işe yarıyor mu bilmiyorum, bir kütüphane kurulması gerekiyor olabilir.

Not: Kodu aratınca bir stackoverflow sorusuna denk geldim ve sanırım vitamio kütüphanesine ihtiyacınız var.

Kullanıcı hangi dizi için m3u8 dosyasını indireceğini nasıl seçiyor?

hangi dizi açıksa o dizi indirilebilir ayrıca button kullanıyorum
M3u8 linki değilmiş hls url bunu bulam gerek herşeyi deniyorum resmen web site trafik izlemesi ile olabilecek birşey

Bahsettiğiniz linkin dışında " https://stream.dizipal364.com/embed-0dhtfu417qdp.html " bu şekilde izleme linkleri var işinize yararmı bilmem ama video bu linkin içinde .

Bunun farkındayım ancak bu dosyanın kaynak koduna erişmeyi denedim ve olmadı herseferinde emdeb disabled uyarısı verdi website trafinde hls urlsini çekmem gerektiğini düşünüyorum bunun için hls urlsini bulmak için başka çözümler bakıyorum

Amacım video linkine ulaşmak ve bu link ile videoyi indirmek indirme durumunu halletim ancak otomatik olarak hls urlsi bulamam gerekki ulr ile indirme sağlıyabiliyim

let url = document.getElementsByTagName(‘iframe’)[0].src
get_url(url)
const get_url = (embed_url) => {
fetch(embed_url)
.then(data => data.text())
.then(data => {
data = data.split(‘file:"’)[1].split(’"’)[0]
console.log(copy(data))
})
}

linki veriyor