爬蟲task03心得

2021-10-05 11:18:54 字數 2428 閱讀 1445

通過這一階段的學習,我知道了爬蟲中針對ip被封的解決方案,主要有三種小套路

1,修改請求頭,模擬瀏覽器(而不是**去直接訪問)去訪問

2,採用**ip並輪換

3,設定訪問時間間隔

下面是獲取ip位址的案例**

from bs4 import beautifulsoup

import requests

import time

defopen_proxy_url

(url)

: user_agent =

headers =

try:

r = requests.get(url, headers = headers, timeout =20)

r.raise_for_status(

) return

(r.text)

except

:print

('無法訪問網頁'

+ url)

defget_proxy_ip

(response)

: proxy_ip_list =

soup = beautifulsoup(response,

'html.parser'

) proxy_ips = soup.select(

'.odd'

)#選擇標籤

(proxy_ip_list)

(實話說,我還是不太懂,只是大致的知道了概念,具體怎麼實現還得下去補充只是然後再理解理解,因為現在我感覺層次還沒達到)

然後是使用**,案例**

def

('無法訪問網頁'

+ url)

return

false

url =

''text = open_url_using_proxy(url, proxy_ip_list[0]

)

接下來明白了selenium的概念和用法,比如建立乙個webdriver例項、開啟乙個頁面、關閉頁面、查詢元素、頁面互動、等待頁面載入等等

最後在session和cookie部分知道了靜態網頁與動態網頁的區別,以及靜態網頁的不足,接下來知道了為什麼要引入session和cookie,因為在使用者做登入操作的時候,服務端會下發乙個類似於 token 憑證的東西返回至客戶端(瀏覽器),有了這個憑證,才能保持登入狀態。但說實話這部分對大二的我的來說卻是很有挑戰,真心認識到自己知識的深深不足,我會努力的,最後深深感謝助教,謝謝

Task03異常處理

猜數字遊戲 題目描述 電腦產生乙個零到100之間的隨機數字,然後讓使用者來猜,如果使用者猜的數字比這個數字大,提示太大,否則提示太小,當使用者正好猜中電腦會提示,恭喜你猜到了這個數是 在使用者每次猜測之前程式會輸出使用者是第幾次猜測,如果使用者輸入的根本不是乙個數字,程式會告訴使用者 輸入無效 嘗試...

Task 03 異常處理

異常就是執行期檢測到的錯誤。計算機語言針對可能出現的錯誤定義了異常型別,某種錯誤引發對應的異常時,異常處理程式將被啟動,從而恢復程式的正常執行。1.python 標準異常總結 2.python標準警告總結 3.try except 語句 try 語句按照如下方式工作 首先,執行try子句 在關鍵字t...

Task03 資料重構

將資料train left up.csv和trainright up.csv橫向合併為一張表,並儲存這張表為result up list up text left up,text right up result up pd.concat list up,axis 1 將train left down...