folder Tahribat.com Forumları
linefolder C#, Asp.Net, .Net Core
linefolder C# Download Uygulaması Hakkında Görüşleriniz



C# Download Uygulaması Hakkında Görüşleriniz

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    1234567B
    1234567B's avatar
    Kayıt Tarihi: 04/Şubat/2010
    Erkek

    Öncelikle merhabalar,

    Kafamda şöyle bir uygulama var.Youtube hayatımda önemli bir yere sahip günün büyük bir bölümünü burada geçiriyorum.Amacım playlistlerdeki 70 80 adet videoyu indirebilecek bir uygulama yapmak.

    Fikir olarak şöyle yapmayı düşünüyorum.

    Öncelikle youtube kanalından http://www.youtube.com/user/SolidWize/videos?sort=dd&view=0&shelf_id=3 örneğin bu kanaldan video linklerini çekip bir diziye yada listboxa atmak.(Bunun için hangi sınıfı kullanmalıyım?)

    Sonrasında keepvid.com'a listboxtaki video linklerini buraya input ettirip linkleri almak.Ve son olarak Dosyayı download etmek.Burda önemli husus videoların hepsinin aynı anda değilde biri bittikten sonra diğerine başlaması araştırabileceğim konu başlıklarını yazabilirseniz çok müteşekkür olurum.Şimdiden teşekkürler.


    arbeit macht frei
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    FCN
    FCN's avatar
    Kayıt Tarihi: 28/Eylül/2007
    Erkek

    playlist linkinden o playlistteki tüm urlları çeken regex

    '(?i)data-video-id="([\w\W]*?)"'

    burdan çektiklerin ID, başına youtube.com/watch?v= ekleyeceksin

    edit1: bununla arasıra kontrol edersin işte playlist'i.

    indirmek için de youtube-dl kullan: http://rg3.github.io/youtube-dl/ 

    örnek command line: youtube-dl -g YOUTUBEURL = sadece direk indirme linkini alır.

    youtube-dl YOUTUBEURL = direk kafasına göre orta karar kalitede bi versiyonunu çeker

    kalite belirtmek istersen: -f 22/17/18 şeklinde sıralama koyabilirsin, (önce varsa 22 yoksa 17 falan)

    youtube format list: http://en.wikipedia.org/wiki/YouTube#Quality_and_codecs 

    dafta teşekkürler.

    not: multithreading kullanmadığın sürece zaten biri bitmeden diğeri başlamaz.

    FCN tarafından 11/Kas/13 15:56 tarihinde düzenlenmiştir
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    selamlar,

    boşuna kendini yorma hocam :) bu tarz sistemler için he zaman yazılmış api/wrapper lara bak..

    normalde paylaşmazdım ama tahribat için paylaşmada sıkıntı yok..

    1- youtube arama

    ilk olarak arama için youtube un apisini kullanacaksın. 2.0 ve 3.0 lık versiyonları var ve arama yapmak için bir kaç yol var. önce kendine bir developer hesabı açman gerek ve oradaki iki keyi youtube apisine entegre etmen gerek. playlist leri de arama yaptırabiliyorsun istediğin kategoride v.s.

    burda detayları bulabilirsin

    https://developers.google.com/youtube/2.0/developers_guide_dotnet?hl=tr&csw=1

    ve buna da bakabilirsin

    http://youtubeapi.codeplex.com/

    2- download etme

    youtube algoritması belirli sürede bir değişmekte o yüzden programında bir güncelleme olması gerek. atıyorum 2 ayda bir değişiyor o zaman da sıkıntı çıkıyor indirmelerde. bunu düşünerek programı otomatik güncelleştirebilecek şekilde yap..

    download için keepvid gibi bi şey kullanmak yerine yazılmış bir wrapper ı kullanabilirsin

    http://ssyoutubedownloader.codeplex.com/

    ya da 

    http://ytdownloadextension.codeplex.com/

     

    http://fastyoutubedownloader.codeplex.com/ (wpf)

    http://youtubefisher.codeplex.com/

    3- seri indirme

    bunun içinde uygulamanı multi-thread tabanlı yapman gerek. aynı anda birden fazla da indirebilirsin ya da biri bitince birini çalıştırabilirsin. bunun için ilk olarak theadpool u araştır onunla yapabilirsin. download ın bittiğini anlamak için kullanacağın youtube downloader wrapperindeki finished, completed gibi eventler içinde tekrar ilgili download fonksiyonunu çağıracaksın thread ile. bunun için bir event ve delegate de yazabilirsin..

     

    kolay gelsin


    Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.
Toplam Hit: 1159 Toplam Mesaj: 3