欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python字體反爬實戰(zhàn)案例分享

 更新時間:2022年06月01日 10:32:17   作者:夢想橡皮擦  
這篇文章主要介紹了Python字體反爬實戰(zhàn)案例分享,文章基于python的相關資料利用實習?x站點實戰(zhàn)案例,具有一定的的參考價值,需要的小伙伴可以參考一下

實戰(zhàn)場景 

本篇博客學習字體反爬,涉及的站點是實習 x,目標站點地址直接百度搜索即可。

可以看到右側(cè)源碼中出現(xiàn)了很多“亂碼”,這其中就包含了關鍵信息。

接下來按照常規(guī)的套路,在開發(fā)者工具中檢索字體相關信息,但是篩選之后,并沒有得到反爬的字體,只有一個 file? 有些許的可能性。

這里就是一種新鮮的場景了,如果判斷不準,那只能用字體樣式和字體標簽名進行判斷了。
在網(wǎng)頁源碼中檢索 @font-face 和 myFont,得到下圖內(nèi)容,這里發(fā)現(xiàn) file 字體又出現(xiàn)了,看來解決問題的關鍵已經(jīng)出現(xiàn)了。

下載文件名之后發(fā)現(xiàn)無后綴名,我們可以補上一個 .ttf 的后綴,接下來拖拽到 FontCreator 中,然后進行查閱。

二次刷新頁面之后,再次獲取一個 file 文件,查看二者是否有編碼變化問題。

結論:每次請求字體文件,得到的響應無變化。

既然沒有變化,后續(xù)的字體反爬實戰(zhàn)編碼就變的簡單了。

實戰(zhàn)編碼 

解析字體文件,獲取編碼與字符。

from fontTools.ttLib import TTFont
font1 = TTFont('./fonts/file.ttf')
keys,values = [],[]
for k, v in font1.getBestCmap().items():
    print(k,v)

得到的結果如下所示:

2 extra bytes in post.stringData array
120 x
57345 uni4E00
57360 uni77
57403 uni56
……

然后我們查看一下實習僧站點返回的數(shù)據(jù)。

&#xf626&#xf395&#xf395-&#xf043&#xf395&#xf395

這其中又涉及到了編碼的轉(zhuǎn)換。

我們拿到一段帶編碼的文字,如下所示:

&#xedb3&#xe4d0&#xe4d0&#xedb3&#xe12a&#xeb3d銷售實習&#xe595

接下來查看一下頁面呈現(xiàn)的文字

SaaS軟件銷售實習生

其中 &#xedb3 對應的是 S 字符,再看一下該字符在字體文件中的編碼,如下所示。

但是從剛才的結果中,并未得到 edb3 相關值,但是把十進制的編碼進行轉(zhuǎn)換之后,得到下述結果。

到此這篇關于Python字體反爬實戰(zhàn)案例分享的文章就介紹到這了,更多相關Python字體反爬 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python中時間類型的JSON數(shù)據(jù)轉(zhuǎn)換

    Python中時間類型的JSON數(shù)據(jù)轉(zhuǎn)換

    在Python中,處理時間和日期數(shù)據(jù)以及與JSON數(shù)據(jù)的相互轉(zhuǎn)換是常見的任務,本文主要為大家詳細如何在Python中處理時間類型的JSON數(shù)據(jù)轉(zhuǎn)換,需要的小伙伴可以參考下
    2024-02-02
  • Python基于DB-API操作MySQL數(shù)據(jù)庫過程解析

    Python基于DB-API操作MySQL數(shù)據(jù)庫過程解析

    這篇文章主要介紹了Python基于DB-API操作MySQL數(shù)據(jù)庫過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • Python下調(diào)用Linux的Shell命令的方法

    Python下調(diào)用Linux的Shell命令的方法

    有時候難免需要直接調(diào)用Shell命令來完成一些比較簡單的操作,這篇文章主要介紹了Python下調(diào)用Linux的Shell命令的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Python中urllib2模塊的8個使用細節(jié)分享

    Python中urllib2模塊的8個使用細節(jié)分享

    這篇文章主要介紹了Python中urllib2模塊的8個使用細節(jié)分享,本文講解了Proxy設置、Timeout設置、加入特定Header、Redirect、Cookie、PUT和DELETE方法等內(nèi)容,需要的朋友可以參考下
    2015-01-01
  • 利用Python自制一個批量圖片水印添加器

    利用Python自制一個批量圖片水印添加器

    這篇文章主要為大家詳細介紹了如何利用Python語言自制一個批量圖片水印添加器,文中的示例代碼講解詳細,具有一定的參考價值,需要的可以了解一下
    2022-10-10
  • Python利用多線程枚舉實現(xiàn)獲取wifi信息

    Python利用多線程枚舉實現(xiàn)獲取wifi信息

    這篇文章主要為大家詳細介紹了Python如何利用枚舉字典的方式來實現(xiàn)獲取wifi信息,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2022-12-12
  • uwsgi啟動django項目的實現(xiàn)步驟

    uwsgi啟動django項目的實現(xiàn)步驟

    本文主要介紹了uwsgi啟動django項目的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • 基于plt.title無法顯示中文的快速解決

    基于plt.title無法顯示中文的快速解決

    這篇文章主要介紹了基于plt.title無法顯示中文的快速解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python文件系統(tǒng)模塊pathlib庫

    Python文件系統(tǒng)模塊pathlib庫

    這篇文章介紹了Python中的文件系統(tǒng)模塊pathlib庫,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • 使用Python腳本來控制Windows Azure的簡單教程

    使用Python腳本來控制Windows Azure的簡單教程

    這篇文章主要介紹了使用Python腳本來控制Windows Azure的簡單教程,由于微軟官方提供了Python SDK,使得用戶自己用Python控制Azure成為了可能,需要的朋友可以參考下
    2015-04-04

最新評論