我想要從一個URL下載所有.mp4文件。我已經看到了如何下載與的urllib文件的例子,但例子看起來像:Python3從一個網址下載多個文件
urllib.request.urlretrieve('http://example.com/big.zip', 'file/on/disk.zip')
在這些例子中,他們指定的確切文件下載,big.zip,但我不知道站點目錄中每個文件的名稱,我只知道文件擴展名。
我希望能夠把在像這樣的網站:
urllib.request.urlretrieve('http://example.com/videos/', 'file/on/disk')
然後下載所有.MP4文件。我相信我可以使用.endswith
來排序特定的文件擴展名。
我還是第一次使用的urllib和我從來沒有使用BeautifulSoup,但我已經看到了它在許多實例中使用,所以我甚至不知道是否可以做到這一點。
Downloading files from multiple websites.
urllib.request for python 3.3 not working to download file
How do I download a file over HTTP using Python?
沒有標準的方法來檢查一個網站將服務的所有文件(故意,這種事情通常對網站所有者來說真的很糟糕,因爲你正在吸取大量的帶寬)。看看您的網站是否有API或存檔系統 - 如果沒有,您可能希望與網站所有者聯繫,以檢查這是否合法使用其內容。有些網站可能會列出所有文件,但由於安全原因,這種情況並不常見,而且許多網站並不僅僅由文件系統支持。 – 2014-10-16 18:06:14
你可以找到與美麗的所有鏈接 – 2014-10-16 18:23:02
@PadraicCunningham我將不得不調查BeautifulSoup。我希望能夠使用Python中包含的模塊,但使用BeautifulSoup看起來更容易。 – Andrew 2014-10-16 18:24:54