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

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • Study with Substance P

    Study with S

    31 Mayıs 2008
  • TheTwistedFrequency

    TheTwistedFr

    26 NİSAN 2010