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

  • BumbleDroid

    BumbleDroid

    18 EKİM 2010
  • happyjpy

    happyjpy

    22 AĞUSTOS 2009
  • TheFlashCentre

    TheFlashCent

    22 Mayıs 2008