Ben sadece puf (Paralel URL getirici) buldum ama bir dosyadan url okumak için alamadım; gibi bir şey
puf < urls.txt
de çalışmıyor.
Sunucuda kurulu işletim sistemi Ubuntu'dur.
Ben sadece puf (Paralel URL getirici) buldum ama bir dosyadan url okumak için alamadım; gibi bir şey
puf < urls.txt
de çalışmıyor.
Sunucuda kurulu işletim sistemi Ubuntu'dur.
Yanıtlar:
GNU Paralel'i kullanma ,
$ parallel -j $ {jobs} wget <urls.txt
ya da xargsgelen GNU Findutils ,
$ xargs -n 1 -P $ {jobs} wget <urls.txt
nerede ${jobs}maksimum sayısı olan wget, aynı anda çalışmasına izin vermek istediğiniz (ayarı -niçin 1bir tane alacak kadar wgetsatıra çağırma içinde urls.txt). -j/ Olmadan -P, parallelaynı anda CPU çekirdeği kadar çok sayıda iş çalıştıracaktır (bu, wgetağ G / Ç'si tarafından bağlanması zorunlu değildir ) ve xargsbirer birer çalışacaktır.
Güzel bir özellik parallelüzerinde olan xargseş zamanlı çalışan işlerin çıkışını tutuyor ayrılmış, ancak bu konuda umursamazsak, xargsönceden yüklenmiş olması daha olasıdır.
jobsbirçok faktöre bağlıdır: yol gecikmesi, yol bant genişliği, uzak sunucu politikaları, vb.
aria2 bunu yapar.
http://sourceforge.net/apps/trac/aria2/wiki/UsageExample#Downloadfileslistedinafileconcurrently
Örnek: aria2c http://example.org/mylinux.iso
Bunu Python ve pycurl kütüphanesini kullanarak uygulayabilirsiniz. Pycurl kütüphanesi, birden fazla eşzamanlı bağlantıya izin veren kendi çift döngüsünü uygulayan "çoklu" arayüze sahiptir.
Ancak arayüz oldukça C-benzeri ve bu nedenle diğer "Pythonic" koduna göre biraz hantal.
Bunun için daha eksiksiz bir tarayıcı benzeri istemci oluşturan bir sarmalayıcı yazdım. Bunu örnek olarak kullanabilirsiniz. Bkz. Pycopia.WWW.client modülü. HTTPConnectionManager çoklu arayüzü sarar.
GNU Parallel'in kılavuz sayfasının bir kısmı, paralel bir yinelemeli wget örneğini içerir.
https://www.gnu.org/software/parallel/man.html#EXAMPLE:-Breadth-first-parallel-web-crawler-mirrorer
HTML iki kez indirilir: Bir kez linkleri çıkarmak için ve bir kez diske indirmek için. Diğer içerik yalnızca bir kez indirilir.
Özyinelemeye ihtiyacınız yoksa ephemient'in cevabı açık görünüyor.
Paralell indirmenizin kurbanları eğlendirilmeyecek: her bir müşteriye bir bağlantının sunulmasını bekliyorlar, birkaç bağlantı kurmak genel olarak daha az istemci anlamına geliyor. (Yani, bu kaba davranış olarak kabul edilir).