Bir adresimiz var
www.hedef.com
gibi. Bu adresten
dosya.zip
adında bir dosya indirmem gerek. Bu dosyayı indirmek için
iwr -uri www.hedef.com/dosya.zip -out dosya.zip
yazdığımda site referer istediğin söyleyip indirmemi engelliyor. Bunun için önce web sitesine bir kere bağlanıp header'i oluşturacak verileri çektim.
$uri = "www.hedef.com"
$dosya = "dosya.zip"
$uas = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0"
$fullurl=$uri.TrimEnd("/") + "/" + $dosya.TrimStart("/")
$ilk_baglanti = iwr -uri $fullurl -useragent $uas
Daha sonra bir $objHeader nesnesi oluşturdum (hepsi gerekli olmayabilir), aşağıdaki gibi
$objHeaders = @{
"Host" = $uri
"Referer" = $uri
"User-Agent" = $uas
"Accept" = $ilk_baglanti.Headers["Content-type"]
"Accept-Language" = "tr,en;q=0.7,en-US;q=0.3"
"Accept-Encoding" = "gzip, deflate"
"DNT" = "1"
# "Connection" = "keep-alive"
"Upgrade-Insecure-Requests" = "1"
"Cookies" = $ilk_baglangi.BaseResponse.Cookies
}
Bundan sonra indirme başarılı oldu
iwr -uri $fullurl -OutFile $dosya -Headers $objHeaders -Useragent $uas
Aslında tüm headers nesnesini oluşturmaya gerek yokmuş. Sadece referer'ı belirtmek yetiyormuş:
iwr -uri $fullurl -Outfile $dosya -Headers @{"Referer"="www.hedef.com"] -UserAgent $uas
Hiç yorum yok:
Yorum Gönder