您好,登錄后才能下訂單哦!
這篇文章主要介紹“python字體加密怎么理解”,在日常操作中,相信很多人在python字體加密怎么理解問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”python字體加密怎么理解”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
在字體加密的網站中用戶也是無法直接進行復制網頁內容的。
目前有使用字體加密的網站大概有下面這些:
58同城,起點,貓眼,大眾點評,啟信寶,天眼查,實習僧,汽車之家
既然這么多的網站都采用了字體加密,那么它一定是一個有效的反爬手段,作為爬蟲工程師我們應該如何應對呢?
首先我們應該先了解一下什么是字體加密。
網頁字體是一個字形集合,而每個字形是描述字母或符號的矢量形狀。
因此,特定字體文件的大小由兩個簡單變量決定:每個字形矢量路徑的復雜程度和特定字體中字形的數量。
通俗一點,同一內容的網頁字體每個字形應該都是大同小異的,我們可以通過比對字體文件的字形來確認映射的內容。
關于字體加密的描述文章實在太多了,個人建議還是看看 Google 官方關于網頁字體的文章。
接著是關于網頁字體加密映射的原理圖,下圖來自谷雨解字:
在爬蟲爬取頁面的時候,頁面中的代碼是陰書,但是在人眼看到的是原文,這樣的映射關系讓爬蟲無法順利爬取到網站內容。
通過上面的字體加密原理圖,我們大概了解到字體加密的原理。
我推薦沒有搞過字體加密的朋友找個比較簡單的網站練手,網上寫的比較多的例子是貓眼的專業版。
貓眼的字體解密文章非常多,建議沒有接觸過得朋友可以先自己動手試試,咸魚也會在之后更新字體解密系列的文章。
下面是字體解密的大致流程:
先找到字體文件的位置,查看源碼大概就是xxx.tff
這樣的文件
重復上面那個操作,將兩個字體文件保存下來
用上面的軟件或者網址打開,并且通過 Python fontTools 將 tff 文件解析為 xml 文件
根據字體文件解析出來的 xml 文件與類似上面的字體界面找出相同內容的映射規律(重點)
在 Python 代碼中把找出的規律實現出來,讓你的代碼能夠通過這個規律還原源代碼與展示內容的映射(這句話比較抽象,可以之后結合代碼文章再讀一遍)
推薦使用 FontCreator
以及百度字體。
打開后顯示的樣子與下圖類似。
到此,關于“python字體加密怎么理解”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。