在一些網站中,當正常瀏覽頁面時,看不出端倪,但是通過查看HTML源代碼時,就發現數據不正常顯示,爬蟲程序則無法獲取。
在網站中,頁面顯示文字時,帶有文字的圖片和正常文字混合顯示在一起,在源代碼中,是以圖片方式顯示,這樣的方式,對於爬蟲程序來說,不去識別圖片中的文字,由採集的數據是不合格的。如:網站中電影評分,商家聯繫電話,文章訪問量等,如下圖。
網頁顯示方式:
爲了防止爬蟲工程師的採集網站中的數據,在網站中把部分顯示文字方式的數據改爲文字顯示。
爬蟲突破:
對於此類網站,如果要實破,則必須使用圖片識別工具,過程如下:
1.網頁獲取圖片url;
2.下載圖片文件並讀取文件數據流;
3.使用圖片識別工具,識別文字。
圖片識別:
圖片識別:可以使用pytesseract庫,前提是要安裝好Tesseract-OCR 工具。但是它是有缺點的,對有混淆的圖片,如驗證碼、帶有中文字體、手寫字體是很難識別的。對於這種問題,可以通過文字訓練來讓強化識別能力,也可以使用第三方api去實現,如騰訊雲,華爲雲,阿里雲等。