r.raise_for_status()語法問題
2020/03/05 上午 11:39
Python網路爬蟲討論版
馮元詰
觀看數:21
回答數:1
收藏數:1
想請問老師r.raise_for_status()這行的用法是什麼呢?
有上網找過資料但還是不太清楚,這行的目的是在檢測這個網頁可以可以連線的意思嗎?
如果不可以連線會發生什麼事呢?
謝謝老師
回答列表
-
2020/03/05 下午 01:36Jeffrey贊同數:2不贊同數:0留言數:1
r.raise_for_status()這行的用法是判斷網路連接的狀態。 如果連接出現錯誤,可以使用try-except來獲取一個異常。
網路上有個範例可以參考:
def
getHTMLText
(
url
):
try
:
r=
requests
.
get
(
url
,
timeout
=
30
)
r.
raise_for_status
()
r.
encoding
=
r
.
apparent_encoding
return
r
.
text
except
:
return
"error"
若是網路不穩定, 可以用except 去取得另外要處理的程序