[問題] Crawler問題(Error 403, 500)

作者: kiwistar (神汁手)   2018-04-27 02:57:49
https://ideone.com/9pNQ0X
照課程指示,寫一個簡單的爬蟲
原本範例使用google finance的網址來示範
但貌似google finance已經變更顯示方式了
照原本的方式輸入會得到HTTP ERROR 403 forbidden
改用讀冊書店的商品頁,得到
HTTP ERROR 500: internal server error
https://i.imgur.com/UZSSgQ1.jpg
插入try-catch區塊:
try:
data = urllib.request.urlopen(url).read()
data1 = data.decode('utf-8')
except HTTPError as e:
content = e.read()
print(content)
把得到的文字複製下來用瀏覽器檢視:
https://i.imgur.com/JpbFiqM.jpg
直接開啟網頁可以正常檢視沒問題,但為什麼用urllib抓就一堆問題?
試過幾個網頁
google finance跳 HTTP Error 403
taaze.tw跳HTTP Error 500
最後使用flickr.com才成功抓下圖片
但如果正常使用上,三個網站有兩個不能用,顯然這東西根本不能用
請問我是不是忘了什麼?還是可以怎麼改進程式碼??
感謝大家
作者: perry27 (Corn)   2018-10-02 10:37:00
要紅就要有特色 想到盜總就是盜壘 鋒哥就是轟砲 建民就是
作者: xyz4594 (ㄈ仔集團小頭目)   2018-10-02 10:37:00
持久
作者: kenduest (小州)   2018-04-27 11:06:00
所以你到底是爬哪個 url ?文章只可以看到 http://www.taaze.tw/sig.html但是這個應該不是你要爬的實際 url ??剛剛看一下,有丟 User-Agent: Mozilla 頁面應該 ok所以應該是擋了沒有送正確 User-Agent: header 的請求
作者: coeric ( )   2018-04-27 11:14:00
原po的網址是怎麼一回事?
作者: kenduest (小州)   2018-04-29 05:38:00
User-Agent 送了就可以了。題外話 requests 比較好用

Links booklink

Contact Us: admin [ a t ] ucptt.com