2015-06-18 209 views
0

所以我正在開發從從網站下載文件解析

http://censtats.census.gov/cgi-bin/cbpnaic/cbpsect.pl

使用數據我已經創建瞭解析我從.txt文件所需要的數據分析器一個Python應用程序您可以從頁面底部的每個數據集下載。但是,我想使其成爲動態的,以便它可以用於任何數據集,而不僅僅是我已下載的數據集。無論如何,我可以使用python從網站抓取文本文件?這些文件被下載爲相同的名稱,所以我真的無法知道我該如何做到這一點。按鈕的

的html代碼:

<form method=post action=/cgi-bin/cbpnaic/cbpsect.txt> 
<input name=Year value=2013 type=hidden><input name=County value=017 type=hidden><input name=State value=38 type=hidden><input name=Noise value=YES type=hidden><input name=LFO value=YES type=hidden><input type=submit value="Save as text file."> 
</form> 
+0

你的意思是「取決於用戶選擇什麼」? – Andersson

+0

向我們展示你所嘗試過的 - 你不能期望我們編寫程序。這裏的oice不是Python,而是R,它是面向統計處理的。目前在Coursera上有一門關於「獲取和清理數據」的課程。 – jcoppens

+0

@Andersson用戶將輸入一個位置,然後我抓住這些位置數據。 – BigBoy

回答

1

當然這是可能的。這需要一點點的工作,但:

  1. 看看urllib3下載從互聯網的東西。 (比較容易使用,但不是在基本的Python中,是requests library)。
  2. 由於使用POST http命令請求文件,請檢查您引用的頁面的HTML源代碼,以查看您必須在POST命令中發送哪些參數以獲取所需頁面(提示:它位於<form></form>之間例如,您需要將state=19添加到POST查詢以獲取愛荷華州的數據
  3. 在1.的下載命令中,您可以指定要保存的文件的名稱,您可以從參數2.
+0

謝謝!現在下載圖書館。爲了確保我在正確的軌道上,我發佈了按鈕表單的html代碼。參數可以是Year,County,State,Noise,LFO。這是你引用的形式嗎? – BigBoy

+0

是......在表單的屬性中是需要詢問的url(表示action =),然後你可以追加每個參數。請求網站有一個快速教程,其中顯示了進行POST的顯示。 – jcoppens

+0

真棒我知道了!謝謝。我實際上使用了urllib2庫,它運行良好 – BigBoy