Çözüldü Python'da küçük resim boyutu nasıl değiştirilir?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Mesaj gönderimine kapalı.

Aerosteon

Centipat
Katılım
27 Şubat 2022
Mesajlar
275
Çözümler
6
Merhaba.

Karşılaştığım sorundan bahsetmeden önce ne yaptığımdan bahsedeyim.
Twitch API'ı ile oynarken verdiği JSON formatındaki çıktıyla uğraşırken ilgili yayıncının o anki yayınından bir thumbnail alıp linkleyip döndüren thumbnail anahtarı mevtcut. Bu anahtarın değeri(value ) (örneğin elraenn için deniyorum)
Bana şöyle bir çıktı veriyor:

Kod:
"thumbnail_url":'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg'

Çok iyi. İşte tam da burada bir sorun başlıyor. Verdiği değere ait linkte resmin boyutlandırılmasını bize bırakıyor. Yani olduğu gibi kopyaladığınızda sonuç almıyorsunuz süslü parantezlerle beraber ilgili yerleri silip istediğiniz değerleri girdiğinizde size o değerlerdeki boyutta resim veriyor. Peki geliyorum asıl bomba yere.
Ben bunu nasıl bir yolla kod içerisinde değiştirebilirim. Kafam şu anda durmuş durumda her türlü fikre açığım.
Teşekkür ediyorum.
 
Çözüm
[CODE lang="python" title="test.py"]thumbnail_url = 'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg';
thumbnail_url = thumbnail_url.replace("{width}", "1920").replace("{height}", "1080")
print(thumbnail_url)[/CODE]

Aşağıdaki ekran görüntüsünden çıktısına bakabilirsin.
Bir kod ile yazıların içindeki {} sembollerini değiştirilebiliyor tam nasıl yapılıyordu unuttum bir Video'da anlatılıyordu.

Video:
Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.
4:23 saniyede aradığınız şey tam olarak var.
Şu işinizi görebilir.


Python:
string = 'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg'
print(string.format(width="100",height="100"))
 
Son düzenleme:
[CODE lang="python" title="test.py"]thumbnail_url = 'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg';
thumbnail_url = thumbnail_url.replace("{width}", "1920").replace("{height}", "1080")
print(thumbnail_url)[/CODE]

Aşağıdaki ekran görüntüsünden çıktısına bakabilirsin.
 

Dosya Ekleri

  • Screenshot_4.png
    Screenshot_4.png
    2,4 KB · Görüntüleme: 13
Son düzenleme:
Çözüm
[CODE lang="python" title="test.py"]thumbnail_url = 'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg';
thumbnail_url = thumbnail_url.replace("{width}", "1920").replace("{height}", "1080")
print(thumbnail_url)[/CODE]

Aşağıdaki ekran görüntüsünden çıktısına bakabilirsin.
Replace fonksiyonu hiç aklıma gelmedi. Hep f-string ile çözülebilir sanırım diye düşündüm. Deniyorum hemen.
Bir kod ile yazıların içindeki {} sembollerini değiştirilebiliyor tam nasıl yapılıyordu unuttum bir Video'da anlatılıyordu.

Video:
Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.
4:23 saniyede aradığınız şey tam olarak var.
Şu işinizi görebilir.


Python:
string = 'https://static-cdn.jtvnw.net/previews-ttv/live_user_<yayıncıADI>-{width}x{height}.jpg'
print(string.format(width="100",height="100"))
Sanırım buda en etkili çözümlerden biri. Deniyorum hemen.

EDİT:
@RMC Team ve @Str0ck3d ilgi ve alakanız için gerçekten teşekkür ediyorum. İnsan bazen böyle basit bir sorunun nasıl çözüldüğünü de bilemeyebiliyor. Boşuna dememişler akıl akıldan üstündür diye.

Tekrardan teşekkür ederim.

Şöyle yazdığım kod ile de ilgili resimi indirebiliyorum:
Python:
thumbnail_url = response.json()["data"][0]["thumbnail_url"].replace("{width}x{height}","1920x1080")
pp = requests.get(thumbnail_url).content
with open(f"{file}\\thumbnail.png","wb") as handler:
    handler.write(pp)

Konu kilitlenebilir.
 
Son düzenleme:
Durum
Mesaj gönderimine kapalı.

Geri
Yukarı