最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

實(shí)戰(zhàn)場景 

本篇博客學(xué)習(xí)字體反爬,涉及的站點(diǎn)是實(shí)習(xí) x,目標(biāo)站點(diǎn)地址直接百度搜索即可。

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

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

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

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

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

結(jié)論:每次請求字體文件,得到的響應(yīng)無變化。

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

實(shí)戰(zhàn)編碼 

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

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

得到的結(jié)果如下所示:

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

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

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

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

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

&#xedb3&#xe4d0&#xe4d0&#xedb3&#xe12a&#xeb3d銷售實(shí)習(xí)&#xe595

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

SaaS軟件銷售實(shí)習(xí)生

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

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

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

相關(guān)文章

  • Python3 實(shí)現(xiàn)將bytes圖片轉(zhuǎn)jpg格式

    Python3 實(shí)現(xiàn)將bytes圖片轉(zhuǎn)jpg格式

    這篇文章主要介紹了Python3 實(shí)現(xiàn)將bytes圖片轉(zhuǎn)jpg格式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python中bisect的用法及示例詳解

    Python中bisect的用法及示例詳解

    這篇文章主要介紹了Python中bisect的用法及示例詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • python如何停止遞歸

    python如何停止遞歸

    在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于python停止遞歸的方法和相關(guān)知識點(diǎn),有興趣的朋友們可以學(xué)習(xí)下。
    2020-09-09
  • 跟老齊學(xué)Python之啰嗦的除法

    跟老齊學(xué)Python之啰嗦的除法

    python 除法運(yùn)算 比較奇怪,和別的程序語言不大一樣。從Python2.2開始,除法運(yùn)算符除了/之外,又引入了一個(gè)除法運(yùn)算符://,后一種運(yùn)算符只用于進(jìn)行整除法。對于除法運(yùn)算符/,默認(rèn)時(shí)的行為跟Python2.2之前的一樣,它視操作數(shù)而定,既可以進(jìn)行整除,也可以進(jìn)行真除法。
    2014-09-09
  • 一文讀懂Python的’=='和’is’用法

    一文讀懂Python的’=='和’is’用法

    探索Python世界的'=='與'is',一個(gè)看似簡單卻隱藏玄機(jī)的話題,本指南將帶你輕松讀懂它們背后的故事,解鎖編程中的這道難題,開始我們的快速之旅,釋放代碼的潛能吧!
    2024-01-01
  • 如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡單配置

    如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡單配置

    這篇文章主要介紹了如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡單配置,幫助大家更好的理解和學(xué)習(xí)flask框架,感興趣的朋友可以了解下
    2020-11-11
  • 11個(gè)Python3字典內(nèi)置方法大全與示例匯總

    11個(gè)Python3字典內(nèi)置方法大全與示例匯總

    這篇文章主要給大家介紹了11個(gè)Python3字典內(nèi)置方法大全與示例的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • python實(shí)現(xiàn)二叉排序樹

    python實(shí)現(xiàn)二叉排序樹

    這篇文章主要介紹了python實(shí)現(xiàn)二叉排序樹,
    2022-01-01
  • 詳解使用python繪制混淆矩陣(confusion_matrix)

    詳解使用python繪制混淆矩陣(confusion_matrix)

    這篇文章主要介紹了詳解使用python繪制混淆矩陣(confusion_matrix),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 比較兩個(gè)numpy數(shù)組并實(shí)現(xiàn)刪除共有的元素

    比較兩個(gè)numpy數(shù)組并實(shí)現(xiàn)刪除共有的元素

    這篇文章主要介紹了比較兩個(gè)numpy數(shù)組并實(shí)現(xiàn)刪除共有的元素,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02

最新評論

磴口县| 睢宁县| 连州市| 屏东市| 平顶山市| 轮台县| 临沭县| 库尔勒市| 阳东县| 昭通市| 金平| 广灵县| 金门县| 喀喇| 武冈市| 赞皇县| 漳州市| 胶州市| 赤峰市| 宜君县| 鞍山市| 南投市| 绥江县| 旅游| 西乡县| 乐昌市| 万安县| 磐石市| 旅游| 绥芬河市| 鄂托克前旗| 兴业县| 大宁县| 新兴县| 化隆| 廊坊市| 南澳县| 华容县| 余江县| 永福县| 红河县|