今天開始學習python網路爬蟲,寫個部落格作為筆記以及自己的學習過程以監督自己。
今天學習了urllib這個python包的一部分內容,主要是urllib.request
內容簡記:
urllib.request.urlopen()詳解自作練習(簡單的把樣例**自己敲一遍):利用以上最基本的urlopen()方法,我們可以完成最基本的簡單網頁的get請求抓取。
data引數
data引數是可選的,如果要新增data,它要是位元組流編碼格式的內容,即bytes型別,通過bytes()函式可以進行轉化,另外如果你傳遞了這個data引數,它的請求方式就不再是get方式請求,而是post。
timeout引數
timeout引數可以設定超時時間,單位為秒,意思就是如果請求超出了設定的這個時間還沒有得到響應,就會丟擲異常,如果不指定,就會使用全域性預設時間。它支援http、https、ftp請求。
練習1簡單爬網頁元素
import urllib.request
import urllib.parse
import urllib.error
import socket
response = urllib.request.urlopen('')
print(response.read().decode('utf-8'))
print(type(response))
print(response.status)
print(response.getheaders())
print(response.getheader('server'))
練習2urlopen函式data引數
data
=bytes(urllib.parse.urlencode(),encoding=
'utf-8')
response = urllib.request.urlopen('',data
=data)
print(response.read())
input()
練習3 urlopen函式timeout引數
response = urllib.request.urlopen('',timeout=1)
print(response.read())
練習4 捕獲timeout異常
try:
response = urllib.request.urlopen('',timeout=0.1)
pass
except exception as e:
if isinstance(e.reason,socket.timeout):
print('time out!')
pass
pass
今天挺忙的只敲了這些,之前寫python不多,敲得有些生疏 python爬蟲(第一天)
網易雲課堂的 丘祐瑋綜述 如何爬網頁資料 使用chorme,右鍵 檢查 pip 安裝 requests pip 安裝 beautifulsoup4 pip 安裝 jupyter 執行jupyter notebook import requests res requests.get res.encod...
python 爬蟲第一天
1.爬蟲框架安裝 如果直接用requests selenium 等庫寫爬蟲,爬取量不是太大,速度要求不高是可以的 我們可以用爬蟲框架 pyspider 和scrapy pyspider 是國人binux編寫的強大網路爬蟲框架,帶有強大的webui 指令碼編輯器 任務 專案管理器及結果處理器,結果支援...
Python 學習Python爬蟲的第一天
疑問 1 2 修復ie瀏覽器 url 開啟仍有報錯,url 可以正常開啟。eclipse執行還是不對。3 換了個url 爬 ie跟搜狗的源 相同,eclipse的結果還是怪怪的。證明跟瀏覽器無關了。4 爬酷狗首頁不正確的原因找到了。其實是對的,只是因為eclipse console 預設限制了結果行...