作者CCpiano (鋼琴社公告用id)
看板Python
標題[問題] 擷取氣象局定時發布的資料
時間Wed Jul 17 01:30:09 2013
請問各位關於python擷取網頁的問題
因為我對颱風資訊還滿有興趣的
因此我想要蒐集每次颱風的所有颱風警報單內容
而在中央氣象局的網頁上
http://www.cwb.gov.tw/V7/prevent/warning/w23.htm?
這是颱風警報(現在是熱帶性低氣壓特報)會出現的網址
我想要寫python program讓他自動在發報時間後幫我從網站上取出警報單的內容
像現在就是:
發布時間:2013/07/16 22:31
熱帶性低氣壓1002百帕,在北緯16.2度,東經123.7度,即在菲律賓東方海
面,向西北移動,時速15公里,未來有發展為輕度颱風的趨勢,本局正密切注意中;請
在巴士海峽航行及作業船隻特別注意。
我用的是python 3.3.2
我爬了文可以使用urllib.request
但我試過之後發現他沒有幫我擷取到以上我想要的資訊內容
請問各位我該如何做到這點?
還是氣象局網頁不讓別人這麼做@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.249.236
1F:→ suzuke:你該把你的code貼出來讓大家幫你看問題在哪, 而不是問 07/17 02:27
2F:→ suzuke:你該怎麼做, 等著讓別人告訴你答案 07/17 02:28
3F:推 carlcarl:你用urllib你是截取到什麼東西? 07/17 02:52
不好意思
我補上我的code (on python 3.3.2)
import urllib.request
web=urllib.request.urlopen('
http://www.cwb.gov.tw/V7/prevent/warning/w23.htm?')
webcontent=web.read()
print(webcontent)
這樣得到一堆big5編碼的內容
https://www.space.ntu.edu.tw/navigate/s/233DBD84725147E999B6835585877100QQY
我剛剛發現裡面有發報的時間點,最新的是在2013/07/17 04:00發的
但是我不知道該如何decode其他文字><
我有用.decode('big5')
但是一直出現類似這樣的error
UnicodeDecodeError: 'big5' codec can't decode byte 0xe7 in position 0:
illegal multibyte sequence
還有請大家指導指導 謝謝!!
※ 編輯: CCpiano 來自: 140.109.113.31 (07/17 09:19)
4F:→ swpoker:errors='ignore' 看看一下 Codec Base Classes 07/17 10:16
5F:→ swpoker:因為網頁通常會有奇怪的字元,所以轉碼要設定忽略錯誤 07/17 10:16
6F:推 trashprince:pyquery不錯用 07/18 00:52