字体反爬
字體反爬介紹
所謂的字體反爬就是網(wǎng)站將一些關(guān)鍵字替換為網(wǎng)站自己的字體,這樣在網(wǎng)頁(yè)上字體會(huì)正常顯示,但是當(dāng)爬取下來(lái)的時(shí)候,經(jīng)過(guò)字體加密的字符都是亂碼的,在網(wǎng)頁(yè)源碼當(dāng)中顯示的是unicode編碼。根本無(wú)法查看。
例如:
破解思路
第一步 找到對(duì)應(yīng)的字體文件進(jìn)行下載
第二步 找到unicode編碼和正常文字的映射關(guān)系
第三步 自定義unicode編碼正常蚊子的映射關(guān)系的字典
第四步 替換源碼當(dāng)中的unicode編碼為正常文字之后,再進(jìn)行數(shù)據(jù)匹配
FontTools安裝與使用
FontTools是一套以ttx為核心的工具集,用于處理與字體編輯有關(guān)的各種問(wèn)題,程序用Python編寫(xiě)完成,代碼開(kāi)源,具有良好的跨平臺(tái)性。
安裝及使用
pip install fontTools
通過(guò)FontTools把woff文件轉(zhuǎn)換為xml文件 font = TTFont(BytesIO(bin_data)) #將解碼字體保存為xml font.saveXML("text2.xml")lxml解析xml文件
lxml可以直接讀取xml文件。
為了演示方便,
總結(jié)
- 上一篇: 麦麦高铁通车后,给当地带来的积极影响有
- 下一篇: 数据分析实例(股票分析实例)