burada dikkat edilmesi gereken nokta listedeki tüm videoların aktif olmasıdır. kodda hata denetimi yapmadığımız için herhangi bir video silindiyse kod o noktada kesilecektir.
bir çoğumuzun hayatından artık mp3 dosyaları çıktı. artık sevidğimiz müzikleri ya online dinliyoruz yada tercih ettiğimiz bir uygulamanın offline modunu kullanıyoruz.
benim gibi bir kaç mp3 indirmek isteyen çıkabilir.
bunun için reklamlarla dolu video dosya içerisinden ses dosyasını kaydetmenize sağlayan bir sürü site var.. isterseniz bunlardan birini kullanabillirsiniz.. ama ben bunlarla uğraşmak istemediğim için basit bir uygulama yapmak istedim..
kodu tabiki pythonda yazacağız.. kod sırasında bize yardımcı olacak bir çok modül mevcut. bunların bir çoğu ffmpeg kullanıyor ve pc nizde kurulu olmasını şart koşuyor.
bu noktada yt_dlp yardımımıza yetişiyor. denediğim modüller arasında en sağlık çalışanı yt_dlp oldu.
şimdi adresini bildiğimiz bir youttube url için yt_dlp modulunu kullanarak mp3 dosyasını nasıl elde ederiz basit bir örnek yapalım.
temel kodumuz yukarıdaki gibi olacaktır… mp3 olarak indirmek istediğiniz bir video dosyasının idsini koddaki <video_id> ile değiştirir ve kodu çalıştırsanız aşagıdaki gibi çıktı ile çarşılacaksınız.
[youtube] Extracting URL: https://www.youtube.com/watch?v=8umGN3KiGY4
[youtube] 8umGN3KiGY4: Downloading webpage
[youtube] 8umGN3KiGY4: Downloading tv client config
[youtube] 8umGN3KiGY4: Downloading player e7567ecf
[youtube] 8umGN3KiGY4: Downloading tv player API JSON
[youtube] 8umGN3KiGY4: Downloading ios player API JSON
[youtube] 8umGN3KiGY4: Downloading m3u8 information
[info] 8umGN3KiGY4: Downloading 1 format(s): 251
[download] Destination: mp3_klasor\Passenger - Let Her Go.webm
[download] 100% of 4.05MiB in 00:00:00 at 8.79MiB/s
[ExtractAudio] Destination: mp3_klasor\Passenger - Let Her Go.mp3
Deleting original file mp3_klasor\Passenger - Let Her Go.webm (pass -k to keep)
uzaktan kontrol ve zamanlama için bir adet akıllı priz ihtiyacı oldu. bir alış veriş sitesinden kampanyadan faydalanarak günsan elektrik e ait olan prizden sipariş verdim. ürünün resmi sayfası
yerli ürün alalım diye düşürken içten içe üzerine günsan yazılmış fason olarak üretilmiş bir ürün alaağımı biliyordum. günsan smart life uygulamasını kendisine göre uyarlamış ama eksiklerde kalmış.. bazı yerlerde hala smartlife yazıyor 🙂
günsanın gg smart isimli uygulamasını kullanarak kısa sürede ürünü uygulamaya sorunsuz olarak ekleyebiliyorsunuz. tuya veya smart life uygulamasını kullanmak istersenizde sorun yaşamıyorsunuz.
buraya kadar sorun yok ancak sizde benim gibi uygulamalarda istediğinizi yapamıyorsanız, verilerinizi dış dünya ile paylaşmak istemiyor ve olası güvenlik açıklarının önüne geçmek istiyebilirsiniz.
bunun için kendi uygulamamızı yazabiliriz veya evinizde çalıştırdığınız bir akıllı ev asistanına ekleyebilirsiniz. ancak bunu yapabilmeniz için cihazın iletşim prokolu vb bilgileri gerekli. bu bilgiler ne yazıkkı cihaz ile doğrudan size gelmiyor.
adım adım bu bilgileri nasıl elde edeceğimize ve nasıl basit bir program yazacağımıza bakalım.
öncelikle akıllı prizinize smart life uygulamasına doğru şekilde ekleyin.
akıllı priz wifi desteğine sahip olduğu için ipsini öğrenmeliyiz. bunu ağınızda ip taraması veya modem arayüzünden rahatlıkla bulabilirsiniz. sonrasına bir port scanner ile açık olan portları bulmalıyız… bu ürün 6666, 6667, 6668 portlarını kullanıyor.
ihtiyacımız olan diğer bilgilere ulaşmanın bir kaç yöntemi var.
en temel haliyle yakadığımız pakeleri analiz ederek bu verilere ulaşabiliriz.. mitm, proy , wireshak vb ile uğraşmayı seviyersanız konuya zaten hekimsinizdir burada anlatmayacağım, siz hallederseniz. biz daha basit olan yöntemlere bakalım.
tuya geliştirici ortamı üzerinden nasıl öğreneceğimizi inceleyelim. öncelikle
adresinden bir proje oluşturalım.. proje oluştururken aşagıdaki parametreleri kullanabilirsiniz. dikkat etmeniz gereken nokta data center seçimi olacak. ileleyen aşamalarda yapacağımız bazı işlemlerde seçtiğiniz data center önem kazanıyor.. US veya Central Europe seçmenizi öneririm..
sonrasında kullanacağınız api servislerini belirlemeniz gerekiyor. Smart Home Content Manage, [Deprecate]Device Log Query , Smart Home Basic Service, [Deprecate]Smart Home Scene Linkage servislerinin seçili olması olmasına dikkat edelim.
projeyi oluşturduktan sonra aşagıdaki gibi ekran bizi karşılayacaktır.
Device altına giriyoruz
sonrasında Link App Account a seçip Add App Account butonuna tıklıyoruz. açılan penceredki qr kodu
smart life uygulamasında tanımlama kısmında taratacağız. bu işlem başarılı olarak tamamlandıktan sonra smart life uygulamasına eklediğiniz tuya destekli cihazları platformda görmeye başlayacaksınız
Device Permission ayarlarını Controllable olarak ayarlayın.. buraya kadar yaptıklarımız sayesinde tuya developer üzerinden akıllı prizlerimizi kontrol edebilir ve izleyebilir duruma getirmiş olduk.