簡單的爬蟲

2021-08-20 04:28:52 字數 812 閱讀 9154

這幾天來一直在做爬蟲的工作,除了因為開始因為不熟悉爬蟲所以學的時候比較花時間之外,其他大多數時候都還是比較順利,中間除了遇到xpath的問題,其他就還好。

就我目前的理解而言爬蟲總共是分為三個步驟。

1. 通過url獲取網頁

2. 獲取網頁之後對網頁進行解析

3. 將解析之後需要的內容存貯起來

獲取網頁

這一步因為是涉及到問url要東西,因此會面臨反爬,編碼格式,請求頭以及cookie的問題。目前我遇到的反爬還只是很簡單的,就是封ip,以及不返回也不關閉鏈結的方式。但是這兩種方式目前都比較容易解決,可以使用爬蟲,以及已有的header(推薦postman軟體)設定異常捕捉等方式進行解決。另外編碼問題,可以檢視網頁的charset 或者自己嘗試,畢竟常用場景下不同的編碼格式就那幾種。

對網頁進行解析

在這一步我遇到的問題是比較多的。

目前的我所知的解析主要有三種:re,beautifulsoup以及xpath。

正則是比較好用而且速度也不錯很靈活,但是面臨複雜任務的時候就很麻煩,這個時候我本來想用xpath進行解決但是無奈不知道為什麼lxml解析出網頁返回是空,查了半天都沒查到,問同事 同事也沒遇到過,再加上時間比較緊,爬的內容不多 就最後選擇了beautifulsoup進行網頁的解析。總體來將bs很方便,但是。也很慢!

最後存貯

這一步我用的主要是json,因為內容不多,但是我覺得當內容比較多而且涉及到內容合併維護的情況,應該是要用資料庫是更好的選擇。

總結對於上面的url獲取網頁以及解析,最好是用乙個函式封裝乙個功能,在記憶體壓力不大的情況下直接返回字典,這樣的話方便對**維護,以及使用多執行緒。

簡單的爬蟲

參考xlzd的知乎專欄 encoding utf 8 from bs4 import beautifulsoup import requests import codecs download url requests模擬http協議中的get請求,用於獲取目標 的原始碼 def download p...

簡單的爬蟲

好久沒有上傳新的部落格了,上上週寫出了爬蟲,但是因為偷懶和末考,一直到今天才回來寫有關這個爬蟲的部落格。原來不了解爬蟲的時候感覺爬蟲好高大上啊,做了之後才發現.哦,好簡單.還有,在這裡要感謝一下虎撲大大,感謝他沒有封我的ip.其實爬蟲很簡單,用到了httpclient還有htmlparser.對ht...

python爬蟲簡單 python爬蟲 簡單版

學過python的帥哥都知道,爬蟲是python的非常好玩的東西,而且python自帶urllib urllib2 requests等的庫,為爬蟲的開發提供大大的方便。這次我要用urllib2,爬一堆風景。先上重點 1 response urllib2.urlopen url read 2 soup...