SORU
14 Mayıs 2009, PERŞEMBE


Nasıl bir dosya a 'akıllı' şekilde python kullanarak indirmek için?

Python ile http üzerinden birkaç dosya indirmem gerekiyor.

Bunu en bariz şekilde sadece urllib2 kullanarak

import urllib2
u = urllib2.urlopen('http://server.com/file.html')
localFile = open('file.html', 'w')
localFile.write(u.read())
localFile.close()

Ama bir şekilde kötü olan URL ile uğraşmak zorunda kalacağım, şöyle ki: http://server.com/!Run.aspx/someoddtext/somemore?id=121&m=pdf. Tarayıcı ile yüklendiğinde, bu dosya okunabilir bir isim, yani vardır. accounts.pdf.

Dosya isimlerini biliyorum ve benim komut dosyası içine koda gerek yok yani python bununla baş etmenin bir yolu var mı?

CEVAP
14 Mayıs 2009, PERŞEMBE


Böyle indir komut dosya adı: başlık söylüyorum kullanıcı Aracısı itme eğilimindedir

Content-Disposition: attachment; filename="the filename.ext"

Eğer bu başlığı kapmak eğer, doğru dosya adı alabilirsiniz.

Content-Dispositionçekici için teklif edilen bir iş için kod biraz var another thread var.

remotefile = urllib2.urlopen('http://example.com/somefile.zip')
remotefile.info()['Content-Disposition']

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FrankJavCee

    FrankJavCee

    29 Kasım 2008
  • jesiel santos

    jesiel santo

    15 Ocak 2009
  • MrSuicideSheep

    MrSuicideShe

    9 NİSAN 2010