2010年9月3日 星期五

唉!抓資料到連 iqy 都出動了!

在網頁上抓資料還有一個很恐怖的狀況,就是網頁上只有表格資料,當全選、複製、貼上到 Excel 時會有恐怖的破格現象!

不過還好 Excel 本身有個功能,可以從網頁上匯入資料,就是「資料」→「匯入外部資料」,但!還是碰到一個問題,就是要抓取的頁面還是很多頁,當每次輸入網址後,還要點選下一頁,然後在打勾要匯入的表格區塊,就又花掉好多點擊動作!還好這動作可以另存成一個 *.iqy 檔,紀錄抓取網址與欄位位置。
WEB
1
http://www.twse.com.tw/ch/listed/listed_company/new_listing.php?page=2

Selection=7
Formatting=None
PreFormattedTextToColumns=True
ConsecutiveDelimitersAsOne=True
SingleBlockTextImport=False
DisableDateRecognition=False
DisableRedirections=False

不過唯一不足的地方就是一個檔案只能指示一個頁面,不同頁面就要給予不同的 iqy。嘗試把兩組(多組)合併成一個檔案,匯入到 Excel 時也只能讀取一個頁面的資料。所以這裡只能用很笨的方法,產生所需要抓取資料的頁數的 iqy 檔案,共有多少頁,就產生多少個 iqy 檔案!產生檔案的程式如下
iiqy.iiqy([tse,otc], page)

最後就會產生數個 iqy 檔,然後在慢慢的讀取。感覺有點笨,但這是目前最快的方法了,我的資料也抓完了!給大家參考吧!

4 則留言 :

  1. 站長您好:

    小弟想向您推薦自己設計的股票軟體
    http://acechart.blogspot.com/

    希望能獲得您的好評與推薦,多有打擾請見諒,謝謝。

    回覆刪除
  2. 可以問一下要怎麼用python來抓取網路上的檔案嗎?
    假設我已經有壓縮檔的網址
    但我不知道要怎麼下載
    還有一定要下載才可以解壓縮嗎?
    還是可以直接解壓縮讀到裡面的檔案

    謝謝您~~~

    回覆刪除
  3. http://stackoverflow.com/questions/22676/how-do-i-download-a-file-over-http-using-python

    回覆刪除