1. 程式人生 > >python反爬之懶載入

python反爬之懶載入

# 在平時的爬蟲中,如果遇到沒有區域性重新整理,沒有字型加密,右鍵檢查也能看到清晰的資料,但是按照已經制定好的解析規則進行解析時,會返回空資料,這是為什麼呢,這時可以在網頁右鍵檢視一下網頁原始碼,可以發現,在網頁上的原始碼中有些部分是正確的,有些標籤是不正確的,改了名字或者加了數字,或者不是你在網頁上檢檢視到的標籤名,所以如果你按照網頁上的解析規則去解析, 是解析不到的,這時就要按照網頁原始碼的解析規則去解析了,這就是典型的網頁懶載入。
# 什麼是網頁懶載入?
# 網頁懶載入是前端為了提高網頁訪問速度,將頁面內沒有出現在可視區域內的圖片先不做載入,等到手動滑動滑鼠滾動到可視區域後再載入。這樣對於網頁載入效能上會有很大的提升,懶載入的效果就可以提升使用者體驗。
import requests
from pyquery import PyQuery as pq
headers = {
    'User-Agent':"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10",
}
url = 'http://sc.chinaz.com/tupian/fengjingtupian.html'
r = requests.get(url=url,headers = headers)
r.encoding = r.apparent_encoding
demo = r.text
soup = pq(demo)
src = soup('.box.picblock.col3 img')
for i in src:
    i = pq(i)
    i = i.attr('src2')
    print(i)
print(len(src))

  選取了站長之家作為目標站點

  右鍵檢檢視到的標籤

 

實際爬取下來的網頁原始碼

 

按照這個解析規則,一般就能正確的解析出來需要的內容了。