簡體   English   中英

如何使用Python從網站下載文本文件?

[英]How to download text file from website using Python?

我需要編寫一個函數,該函數可以從http://www.namejet.com/pages/downloads.aspx.下載並存儲今天的預發布域.txt文件列表http://www.namejet.com/pages/downloads.aspx. 因此,由於今天是10月8日,因此您想要獲取文件“ 2012年10月8日,星期一”。 嘗試了請求,但沒有成功。 我遇到了麻煩,因為該文件未存儲在固定的URL上,但隱藏在某些Javascript后面。

在處理ASP.NET的回發系統時,這有些棘手。 如果這不是用於個人腳本,則我會警惕,因為您不僅在有效地使用另一個站點的數據,而且還對它們的軟件進行了反向工程(但是,IANAL並不了解有關這些問題的合法性)系統)。

您要做的是檢查POST數據(使用Firebug,Chrome開發人員工具等),然后查找表單對象的__EVENTTARGET__VIEWSTATE屬性。 您必須解碼__VIEWSTATE才能使其可讀(請查看http://ignatu.co.uk/ViewStateDecoder.aspx )。 從那里,我認為您應該能夠弄清楚如何獲取所需的數據。

在Python中,它非常簡單:

from urllib2 import urlopen
from urllib import urlencode

data = urlopen('url', urlencode({
    '__VIEWSTATE': 'foo',
    '__EVENTTARGET': 'bar',
})).read()

實際上,您將獲得文本文件,以響應具有多個base64編碼的請求參數的POST請求。 隨意玩

使用Firebug或任何其他調試工具查看POST的內容和參數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM