Tôi cần tải xuống một số tệp qua http bằng Python.Cách tải xuống tệp bằng cách sử dụng python theo cách 'thông minh hơn'?
Cách rõ ràng nhất để làm điều đó chỉ được sử dụng urllib2:
import urllib2
u = urllib2.urlopen('http://server.com/file.html')
localFile = open('file.html', 'w')
localFile.write(u.read())
localFile.close()
Nhưng tôi sẽ phải đối phó với các URL mà khó chịu một cách nào đó, nói như thế này: http://server.com/!Run.aspx/someoddtext/somemore?id=121&m=pdf
. Khi tải xuống qua trình duyệt, tệp có tên có thể đọc được, ví dụ: accounts.pdf
.
Có cách nào để xử lý điều đó trong python, vì vậy tôi không cần phải biết tên tệp và mã hóa chúng vào tập lệnh của tôi không?
Tên tệp trên máy chủ có liên quan không? Có lẽ những tập tin này có một số ý nghĩa với bạn, vì vậy bạn nên có khả năng tự đặt tên cho chúng. Nếu các tên không có ý nghĩa, hãy đưa ra một tên duy nhất ngẫu nhiên cho mình (uuids có lẽ?) –
Tôi muốn có tên tập tin có thể đọc được và có ý nghĩa. Vấn đề là, tập lệnh sẽ lấy URL để tải xuống từ tệp văn bản và URL sẽ được thêm và xóa bởi một người không phải là kỹ thuật. – kender