mirror of
https://github.com/luzhisheng/js_reverse.git
synced 2025-04-20 03:59:57 +08:00
12css加密静态css字体加密
This commit is contained in:
parent
460725ce1b
commit
e14f6f25a6
BIN
猿人学练习/12css加密静态css字体加密/aiding.woff
Normal file
BIN
猿人学练习/12css加密静态css字体加密/aiding.woff
Normal file
Binary file not shown.
BIN
猿人学练习/12css加密静态css字体加密/img/1.png
Normal file
BIN
猿人学练习/12css加密静态css字体加密/img/1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
BIN
猿人学练习/12css加密静态css字体加密/img/2.png
Normal file
BIN
猿人学练习/12css加密静态css字体加密/img/2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.8 KiB |
BIN
猿人学练习/12css加密静态css字体加密/img/3.png
Normal file
BIN
猿人学练习/12css加密静态css字体加密/img/3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.6 KiB |
BIN
猿人学练习/12css加密静态css字体加密/img/4.png
Normal file
BIN
猿人学练习/12css加密静态css字体加密/img/4.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
BIN
猿人学练习/12css加密静态css字体加密/img/5.png
Normal file
BIN
猿人学练习/12css加密静态css字体加密/img/5.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 29 KiB |
49
猿人学练习/12css加密静态css字体加密/main.py
Normal file
49
猿人学练习/12css加密静态css字体加密/main.py
Normal file
@ -0,0 +1,49 @@
|
||||
import json
|
||||
import requests
|
||||
from fontTools.ttLib import TTFont
|
||||
|
||||
|
||||
def font_value(key):
|
||||
font = TTFont('aiding.woff')
|
||||
font.saveXML('movie.xml')
|
||||
font_dict = {}
|
||||
i = 1
|
||||
for font_u_nie in font.getGlyphOrder()[1:]:
|
||||
font_dict[font_u_nie] = i
|
||||
i += 1
|
||||
font_dict['unif712'] = 0
|
||||
return font_dict[key]
|
||||
|
||||
|
||||
def challenge12(page):
|
||||
url = "https://www.python-spider.com/api/challenge12"
|
||||
payload = f"page={page}"
|
||||
session = requests.session()
|
||||
headers = {
|
||||
'content-type': 'application/x-www-form-urlencoded; charset=UTF-8'
|
||||
}
|
||||
session.headers = headers
|
||||
response = session.request("POST", url, data=payload)
|
||||
print(response.text)
|
||||
return response.text
|
||||
|
||||
|
||||
def run():
|
||||
data_num = 0
|
||||
for page in range(1, 101):
|
||||
response_text = challenge12(page)
|
||||
response_text = json.loads(response_text)
|
||||
data_list = response_text.get('data')
|
||||
for data in data_list:
|
||||
data_value_list = data.get('value').split(' ')[:-1]
|
||||
data_num_join = ''
|
||||
for data_value in data_value_list:
|
||||
data_value_num = font_value(data_value.replace('&#x', 'uni'))
|
||||
data_num_join += str(data_value_num)
|
||||
data_num += int(data_num_join)
|
||||
print(data_num)
|
||||
print(data_num)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
run()
|
671
猿人学练习/12css加密静态css字体加密/movie.xml
Normal file
671
猿人学练习/12css加密静态css字体加密/movie.xml
Normal file
@ -0,0 +1,671 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.38">
|
||||
|
||||
<GlyphOrder>
|
||||
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
|
||||
<GlyphID id="0" name=".notdef"/>
|
||||
<GlyphID id="1" name="unie458"/>
|
||||
<GlyphID id="2" name="unif375"/>
|
||||
<GlyphID id="3" name="unif80c"/>
|
||||
<GlyphID id="4" name="unif12f"/>
|
||||
<GlyphID id="5" name="uniee4a"/>
|
||||
<GlyphID id="6" name="unif295"/>
|
||||
<GlyphID id="7" name="unie449"/>
|
||||
<GlyphID id="8" name="unif0d6"/>
|
||||
<GlyphID id="9" name="unie44d"/>
|
||||
<GlyphID id="10" name="unif712"/>
|
||||
</GlyphOrder>
|
||||
|
||||
<head>
|
||||
<!-- Most of this table will be recalculated by the compiler -->
|
||||
<tableVersion value="1.0"/>
|
||||
<fontRevision value="1.0"/>
|
||||
<checkSumAdjustment value="0xb6ef51aa"/>
|
||||
<magicNumber value="0x5f0f3cf5"/>
|
||||
<flags value="00000000 00001011"/>
|
||||
<unitsPerEm value="1000"/>
|
||||
<created value="Sun Oct 13 04:00:31 2019"/>
|
||||
<modified value="Sun Oct 13 04:00:31 2019"/>
|
||||
<xMin value="0"/>
|
||||
<yMin value="-20"/>
|
||||
<xMax value="577"/>
|
||||
<yMax value="729"/>
|
||||
<macStyle value="00000000 00000000"/>
|
||||
<lowestRecPPEM value="8"/>
|
||||
<fontDirectionHint value="2"/>
|
||||
<indexToLocFormat value="0"/>
|
||||
<glyphDataFormat value="0"/>
|
||||
</head>
|
||||
|
||||
<hhea>
|
||||
<tableVersion value="0x00010000"/>
|
||||
<ascent value="1060"/>
|
||||
<descent value="-340"/>
|
||||
<lineGap value="126"/>
|
||||
<advanceWidthMax value="600"/>
|
||||
<minLeftSideBearing value="0"/>
|
||||
<minRightSideBearing value="23"/>
|
||||
<xMaxExtent value="577"/>
|
||||
<caretSlopeRise value="1"/>
|
||||
<caretSlopeRun value="0"/>
|
||||
<caretOffset value="0"/>
|
||||
<reserved0 value="0"/>
|
||||
<reserved1 value="0"/>
|
||||
<reserved2 value="0"/>
|
||||
<reserved3 value="0"/>
|
||||
<metricDataFormat value="0"/>
|
||||
<numberOfHMetrics value="2"/>
|
||||
</hhea>
|
||||
|
||||
<maxp>
|
||||
<!-- Most of this table will be recalculated by the compiler -->
|
||||
<tableVersion value="0x10000"/>
|
||||
<numGlyphs value="11"/>
|
||||
<maxPoints value="57"/>
|
||||
<maxContours value="3"/>
|
||||
<maxCompositePoints value="0"/>
|
||||
<maxCompositeContours value="0"/>
|
||||
<maxZones value="2"/>
|
||||
<maxTwilightPoints value="0"/>
|
||||
<maxStorage value="10"/>
|
||||
<maxFunctionDefs value="10"/>
|
||||
<maxInstructionDefs value="0"/>
|
||||
<maxStackElements value="255"/>
|
||||
<maxSizeOfInstructions value="0"/>
|
||||
<maxComponentElements value="0"/>
|
||||
<maxComponentDepth value="0"/>
|
||||
</maxp>
|
||||
|
||||
<OS_2>
|
||||
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
|
||||
will be recalculated by the compiler -->
|
||||
<version value="4"/>
|
||||
<xAvgCharWidth value="554"/>
|
||||
<usWeightClass value="400"/>
|
||||
<usWidthClass value="5"/>
|
||||
<fsType value="00000000 00001000"/>
|
||||
<ySubscriptXSize value="721"/>
|
||||
<ySubscriptYSize value="979"/>
|
||||
<ySubscriptXOffset value="0"/>
|
||||
<ySubscriptYOffset value="196"/>
|
||||
<ySuperscriptXSize value="721"/>
|
||||
<ySuperscriptYSize value="979"/>
|
||||
<ySuperscriptXOffset value="0"/>
|
||||
<ySuperscriptYOffset value="672"/>
|
||||
<yStrikeoutSize value="68"/>
|
||||
<yStrikeoutPosition value="361"/>
|
||||
<sFamilyClass value="0"/>
|
||||
<panose>
|
||||
<bFamilyType value="2"/>
|
||||
<bSerifStyle value="0"/>
|
||||
<bWeight value="5"/>
|
||||
<bProportion value="3"/>
|
||||
<bContrast value="0"/>
|
||||
<bStrokeVariation value="0"/>
|
||||
<bArmStyle value="0"/>
|
||||
<bLetterForm value="0"/>
|
||||
<bMidline value="0"/>
|
||||
<bXHeight value="0"/>
|
||||
</panose>
|
||||
<ulUnicodeRange1 value="00000000 00000000 00000000 00000000"/>
|
||||
<ulUnicodeRange2 value="00010000 00000000 00000000 00000000"/>
|
||||
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
|
||||
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
|
||||
<achVendID value="PfEd"/>
|
||||
<fsSelection value="00000000 01000000"/>
|
||||
<usFirstCharIndex value="120"/>
|
||||
<usLastCharIndex value="63500"/>
|
||||
<sTypoAscender value="1060"/>
|
||||
<sTypoDescender value="-340"/>
|
||||
<sTypoLineGap value="126"/>
|
||||
<usWinAscent value="1060"/>
|
||||
<usWinDescent value="340"/>
|
||||
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
|
||||
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
|
||||
<sxHeight value="0"/>
|
||||
<sCapHeight value="0"/>
|
||||
<usDefaultChar value="0"/>
|
||||
<usBreakChar value="32"/>
|
||||
<usMaxContext value="0"/>
|
||||
</OS_2>
|
||||
|
||||
<hmtx>
|
||||
<mtx name=".notdef" width="100" lsb="0"/>
|
||||
<mtx name="unie449" width="600" lsb="0"/>
|
||||
<mtx name="unie44d" width="600" lsb="0"/>
|
||||
<mtx name="unie458" width="600" lsb="0"/>
|
||||
<mtx name="uniee4a" width="600" lsb="0"/>
|
||||
<mtx name="unif0d6" width="600" lsb="0"/>
|
||||
<mtx name="unif12f" width="600" lsb="0"/>
|
||||
<mtx name="unif295" width="600" lsb="0"/>
|
||||
<mtx name="unif375" width="600" lsb="0"/>
|
||||
<mtx name="unif712" width="600" lsb="0"/>
|
||||
<mtx name="unif80c" width="600" lsb="0"/>
|
||||
</hmtx>
|
||||
|
||||
<cmap>
|
||||
<tableVersion version="0"/>
|
||||
<cmap_format_4 platformID="0" platEncID="3" language="0">
|
||||
<map code="0xe449" name="unie449"/><!-- ???? -->
|
||||
<map code="0xe44d" name="unie44d"/><!-- ???? -->
|
||||
<map code="0xe458" name="unie458"/><!-- ???? -->
|
||||
<map code="0xee4a" name="uniee4a"/><!-- ???? -->
|
||||
<map code="0xf0d6" name="unif0d6"/><!-- ???? -->
|
||||
<map code="0xf12f" name="unif12f"/><!-- ???? -->
|
||||
<map code="0xf295" name="unif295"/><!-- ???? -->
|
||||
<map code="0xf375" name="unif375"/><!-- ???? -->
|
||||
<map code="0xf712" name="unif712"/><!-- ???? -->
|
||||
<map code="0xf80c" name="unif80c"/><!-- ???? -->
|
||||
</cmap_format_4>
|
||||
<cmap_format_0 platformID="1" platEncID="0" language="0">
|
||||
</cmap_format_0>
|
||||
<cmap_format_4 platformID="3" platEncID="1" language="0">
|
||||
<map code="0xe449" name="unie449"/><!-- ???? -->
|
||||
<map code="0xe44d" name="unie44d"/><!-- ???? -->
|
||||
<map code="0xe458" name="unie458"/><!-- ???? -->
|
||||
<map code="0xee4a" name="uniee4a"/><!-- ???? -->
|
||||
<map code="0xf0d6" name="unif0d6"/><!-- ???? -->
|
||||
<map code="0xf12f" name="unif12f"/><!-- ???? -->
|
||||
<map code="0xf295" name="unif295"/><!-- ???? -->
|
||||
<map code="0xf375" name="unif375"/><!-- ???? -->
|
||||
<map code="0xf712" name="unif712"/><!-- ???? -->
|
||||
<map code="0xf80c" name="unif80c"/><!-- ???? -->
|
||||
</cmap_format_4>
|
||||
</cmap>
|
||||
|
||||
<loca>
|
||||
<!-- The 'loca' table will be calculated by the compiler -->
|
||||
</loca>
|
||||
|
||||
<glyf>
|
||||
|
||||
<!-- The xMin, yMin, xMax and yMax values
|
||||
will be recalculated by the compiler. -->
|
||||
|
||||
<TTGlyph name=".notdef" xMin="0" yMin="-20" xMax="50" yMax="20">
|
||||
<contour>
|
||||
<pt x="20" y="20" on="1"/>
|
||||
<pt x="50" y="20" on="1"/>
|
||||
<pt x="50" y="-20" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unie449" xMin="0" yMin="0" xMax="535" yMax="714">
|
||||
<contour>
|
||||
<pt x="66" y="714" on="1"/>
|
||||
<pt x="66" y="639" on="1"/>
|
||||
<pt x="451" y="639" on="1"/>
|
||||
<pt x="185" y="0" on="1"/>
|
||||
<pt x="272" y="0" on="1"/>
|
||||
<pt x="535" y="647" on="1"/>
|
||||
<pt x="535" y="714" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unie44d" xMin="0" yMin="-14" xMax="550" yMax="728">
|
||||
<contour>
|
||||
<pt x="292" y="728" on="1"/>
|
||||
<pt x="187" y="728" on="0"/>
|
||||
<pt x="51" y="589" on="0"/>
|
||||
<pt x="51" y="483" on="1"/>
|
||||
<pt x="51" y="380" on="0"/>
|
||||
<pt x="112" y="315" on="1"/>
|
||||
<pt x="175" y="247" on="0"/>
|
||||
<pt x="278" y="247" on="1"/>
|
||||
<pt x="341" y="248" on="0"/>
|
||||
<pt x="439" y="310" on="0"/>
|
||||
<pt x="466" y="364" on="1"/>
|
||||
<pt x="470" y="364" on="1"/>
|
||||
<pt x="471" y="338" on="1"/>
|
||||
<pt x="471" y="218" on="0"/>
|
||||
<pt x="424" y="138" on="1"/>
|
||||
<pt x="375" y="55" on="0"/>
|
||||
<pt x="292" y="55" on="1"/>
|
||||
<pt x="166" y="55" on="0"/>
|
||||
<pt x="144" y="177" on="1"/>
|
||||
<pt x="63" y="177" on="1"/>
|
||||
<pt x="92" y="-14" on="0"/>
|
||||
<pt x="291" y="-14" on="1"/>
|
||||
<pt x="411" y="-13" on="0"/>
|
||||
<pt x="483" y="98" on="1"/>
|
||||
<pt x="550" y="206" on="0"/>
|
||||
<pt x="550" y="376" on="1"/>
|
||||
<pt x="550" y="542" on="0"/>
|
||||
<pt x="487" y="632" on="1"/>
|
||||
<pt x="421" y="728" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="294" y="659" on="1"/>
|
||||
<pt x="368" y="659" on="0"/>
|
||||
<pt x="413" y="608" on="1"/>
|
||||
<pt x="457" y="560" on="0"/>
|
||||
<pt x="457" y="411" on="0"/>
|
||||
<pt x="363" y="315" on="0"/>
|
||||
<pt x="294" y="315" on="1"/>
|
||||
<pt x="219" y="315" on="0"/>
|
||||
<pt x="132" y="408" on="0"/>
|
||||
<pt x="132" y="483" on="1"/>
|
||||
<pt x="132" y="561" on="0"/>
|
||||
<pt x="221" y="659" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unie458" xMin="0" yMin="0" xMax="361" yMax="714">
|
||||
<contour>
|
||||
<pt x="297" y="714" on="1"/>
|
||||
<pt x="262" y="674" on="0"/>
|
||||
<pt x="160" y="612" on="0"/>
|
||||
<pt x="111" y="598" on="1"/>
|
||||
<pt x="111" y="516" on="1"/>
|
||||
<pt x="212" y="546" on="0"/>
|
||||
<pt x="279" y="614" on="1"/>
|
||||
<pt x="279" y="0" on="1"/>
|
||||
<pt x="361" y="0" on="1"/>
|
||||
<pt x="361" y="714" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="uniee4a" xMin="0" yMin="-14" xMax="549" yMax="714">
|
||||
<contour>
|
||||
<pt x="105" y="714" on="1"/>
|
||||
<pt x="67" y="320" on="1"/>
|
||||
<pt x="145" y="320" on="1"/>
|
||||
<pt x="167" y="363" on="0"/>
|
||||
<pt x="209" y="384" on="1"/>
|
||||
<pt x="249" y="406" on="0"/>
|
||||
<pt x="300" y="406" on="1"/>
|
||||
<pt x="378" y="407" on="0"/>
|
||||
<pt x="468" y="313" on="0"/>
|
||||
<pt x="468" y="227" on="1"/>
|
||||
<pt x="468" y="152" on="0"/>
|
||||
<pt x="370" y="56" on="0"/>
|
||||
<pt x="295" y="56" on="1"/>
|
||||
<pt x="229" y="56" on="0"/>
|
||||
<pt x="186" y="88" on="1"/>
|
||||
<pt x="138" y="124" on="0"/>
|
||||
<pt x="132" y="192" on="1"/>
|
||||
<pt x="51" y="192" on="1"/>
|
||||
<pt x="58" y="94" on="0"/>
|
||||
<pt x="133" y="37" on="1"/>
|
||||
<pt x="199" y="-14" on="0"/>
|
||||
<pt x="294" y="-14" on="1"/>
|
||||
<pt x="400" y="-14" on="0"/>
|
||||
<pt x="472" y="51" on="1"/>
|
||||
<pt x="549" y="120" on="0"/>
|
||||
<pt x="549" y="228" on="1"/>
|
||||
<pt x="549" y="343" on="0"/>
|
||||
<pt x="422" y="473" on="0"/>
|
||||
<pt x="320" y="473" on="1"/>
|
||||
<pt x="271" y="474" on="0"/>
|
||||
<pt x="229" y="456" on="1"/>
|
||||
<pt x="182" y="438" on="0"/>
|
||||
<pt x="152" y="402" on="1"/>
|
||||
<pt x="148" y="402" on="1"/>
|
||||
<pt x="172" y="641" on="1"/>
|
||||
<pt x="520" y="641" on="1"/>
|
||||
<pt x="520" y="714" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif0d6" xMin="0" yMin="-14" xMax="558" yMax="728">
|
||||
<contour>
|
||||
<pt x="300" y="728" on="1"/>
|
||||
<pt x="188" y="728" on="0"/>
|
||||
<pt x="125" y="670" on="1"/>
|
||||
<pt x="67" y="617" on="0"/>
|
||||
<pt x="67" y="539" on="1"/>
|
||||
<pt x="67" y="482" on="0"/>
|
||||
<pt x="94" y="443" on="1"/>
|
||||
<pt x="122" y="401" on="0"/>
|
||||
<pt x="179" y="381" on="1"/>
|
||||
<pt x="179" y="379" on="1"/>
|
||||
<pt x="123" y="365" on="0"/>
|
||||
<pt x="84" y="317" on="1"/>
|
||||
<pt x="42" y="266" on="0"/>
|
||||
<pt x="42" y="197" on="1"/>
|
||||
<pt x="42" y="102" on="0"/>
|
||||
<pt x="176" y="-14" on="0"/>
|
||||
<pt x="423" y="-14" on="0"/>
|
||||
<pt x="492" y="45" on="1"/>
|
||||
<pt x="558" y="102" on="0"/>
|
||||
<pt x="558" y="197" on="1"/>
|
||||
<pt x="558" y="266" on="0"/>
|
||||
<pt x="516" y="317" on="1"/>
|
||||
<pt x="477" y="365" on="0"/>
|
||||
<pt x="421" y="379" on="1"/>
|
||||
<pt x="421" y="381" on="1"/>
|
||||
<pt x="476" y="401" on="0"/>
|
||||
<pt x="506" y="443" on="1"/>
|
||||
<pt x="533" y="482" on="0"/>
|
||||
<pt x="533" y="539" on="1"/>
|
||||
<pt x="533" y="617" on="0"/>
|
||||
<pt x="475" y="670" on="1"/>
|
||||
<pt x="412" y="728" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="300" y="661" on="1"/>
|
||||
<pt x="375" y="661" on="0"/>
|
||||
<pt x="419" y="622" on="1"/>
|
||||
<pt x="456" y="589" on="0"/>
|
||||
<pt x="456" y="482" on="0"/>
|
||||
<pt x="423" y="448" on="1"/>
|
||||
<pt x="383" y="409" on="0"/>
|
||||
<pt x="216" y="409" on="0"/>
|
||||
<pt x="177" y="448" on="1"/>
|
||||
<pt x="144" y="482" on="0"/>
|
||||
<pt x="144" y="589" on="0"/>
|
||||
<pt x="181" y="622" on="1"/>
|
||||
<pt x="223" y="661" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="300" y="344" on="1"/>
|
||||
<pt x="386" y="344" on="0"/>
|
||||
<pt x="434" y="301" on="1"/>
|
||||
<pt x="477" y="262" on="0"/>
|
||||
<pt x="477" y="134" on="0"/>
|
||||
<pt x="434" y="95" on="1"/>
|
||||
<pt x="387" y="53" on="0"/>
|
||||
<pt x="213" y="53" on="0"/>
|
||||
<pt x="123" y="134" on="0"/>
|
||||
<pt x="123" y="262" on="0"/>
|
||||
<pt x="167" y="301" on="1"/>
|
||||
<pt x="213" y="344" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif12f" xMin="0" yMin="0" xMax="577" yMax="714">
|
||||
<contour>
|
||||
<pt x="384" y="714" on="1"/>
|
||||
<pt x="24" y="240" on="1"/>
|
||||
<pt x="24" y="162" on="1"/>
|
||||
<pt x="383" y="162" on="1"/>
|
||||
<pt x="383" y="0" on="1"/>
|
||||
<pt x="461" y="0" on="1"/>
|
||||
<pt x="461" y="162" on="1"/>
|
||||
<pt x="577" y="162" on="1"/>
|
||||
<pt x="577" y="229" on="1"/>
|
||||
<pt x="461" y="229" on="1"/>
|
||||
<pt x="461" y="714" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="380" y="607" on="1"/>
|
||||
<pt x="383" y="607" on="1"/>
|
||||
<pt x="383" y="229" on="1"/>
|
||||
<pt x="93" y="229" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif295" xMin="0" yMin="-14" xMax="550" yMax="729">
|
||||
<contour>
|
||||
<pt x="310" y="728" on="1"/>
|
||||
<pt x="189" y="728" on="0"/>
|
||||
<pt x="118" y="616" on="1"/>
|
||||
<pt x="51" y="509" on="0"/>
|
||||
<pt x="51" y="338" on="1"/>
|
||||
<pt x="51" y="175" on="0"/>
|
||||
<pt x="113" y="83" on="1"/>
|
||||
<pt x="179" y="-13" on="0"/>
|
||||
<pt x="309" y="-14" on="1"/>
|
||||
<pt x="414" y="-13" on="0"/>
|
||||
<pt x="550" y="126" on="0"/>
|
||||
<pt x="550" y="336" on="0"/>
|
||||
<pt x="425" y="467" on="0"/>
|
||||
<pt x="323" y="467" on="1"/>
|
||||
<pt x="260" y="467" on="0"/>
|
||||
<pt x="212" y="436" on="1"/>
|
||||
<pt x="162" y="406" on="0"/>
|
||||
<pt x="135" y="350" on="1"/>
|
||||
<pt x="131" y="350" on="1"/>
|
||||
<pt x="130" y="376" on="1"/>
|
||||
<pt x="130" y="498" on="0"/>
|
||||
<pt x="177" y="576" on="1"/>
|
||||
<pt x="225" y="660" on="0"/>
|
||||
<pt x="309" y="659" on="1"/>
|
||||
<pt x="433" y="660" on="0"/>
|
||||
<pt x="457" y="537" on="1"/>
|
||||
<pt x="538" y="537" on="1"/>
|
||||
<pt x="508" y="729" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="307" y="399" on="1"/>
|
||||
<pt x="380" y="400" on="0"/>
|
||||
<pt x="425" y="352" on="1"/>
|
||||
<pt x="469" y="307" on="0"/>
|
||||
<pt x="469" y="155" on="0"/>
|
||||
<pt x="424" y="104" on="1"/>
|
||||
<pt x="379" y="56" on="0"/>
|
||||
<pt x="307" y="55" on="1"/>
|
||||
<pt x="233" y="55" on="0"/>
|
||||
<pt x="188" y="106" on="1"/>
|
||||
<pt x="144" y="154" on="0"/>
|
||||
<pt x="144" y="304" on="0"/>
|
||||
<pt x="237" y="399" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif375" xMin="0" yMin="0" xMax="538" yMax="728">
|
||||
<contour>
|
||||
<pt x="310" y="728" on="1"/>
|
||||
<pt x="202" y="728" on="0"/>
|
||||
<pt x="69" y="585" on="0"/>
|
||||
<pt x="68" y="465" on="1"/>
|
||||
<pt x="150" y="465" on="1"/>
|
||||
<pt x="152" y="560" on="0"/>
|
||||
<pt x="194" y="608" on="1"/>
|
||||
<pt x="233" y="659" on="0"/>
|
||||
<pt x="307" y="658" on="1"/>
|
||||
<pt x="377" y="658" on="0"/>
|
||||
<pt x="455" y="587" on="0"/>
|
||||
<pt x="455" y="521" on="1"/>
|
||||
<pt x="455" y="452" on="0"/>
|
||||
<pt x="400" y="393" on="1"/>
|
||||
<pt x="372" y="364" on="0"/>
|
||||
<pt x="288" y="304" on="1"/>
|
||||
<pt x="175" y="226" on="0"/>
|
||||
<pt x="133" y="177" on="1"/>
|
||||
<pt x="62" y="98" on="0"/>
|
||||
<pt x="62" y="0" on="1"/>
|
||||
<pt x="538" y="0" on="1"/>
|
||||
<pt x="538" y="73" on="1"/>
|
||||
<pt x="163" y="73" on="1"/>
|
||||
<pt x="183" y="145" on="0"/>
|
||||
<pt x="319" y="237" on="1"/>
|
||||
<pt x="430" y="313" on="0"/>
|
||||
<pt x="467" y="352" on="1"/>
|
||||
<pt x="537" y="427" on="0"/>
|
||||
<pt x="537" y="614" on="0"/>
|
||||
<pt x="409" y="728" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif712" xMin="0" yMin="-14" xMax="550" yMax="729">
|
||||
<contour>
|
||||
<pt x="300" y="728" on="1"/>
|
||||
<pt x="171" y="729" on="0"/>
|
||||
<pt x="107" y="615" on="1"/>
|
||||
<pt x="50" y="519" on="0"/>
|
||||
<pt x="50" y="195" on="0"/>
|
||||
<pt x="107" y="99" on="1"/>
|
||||
<pt x="171" y="-14" on="0"/>
|
||||
<pt x="427" y="-14" on="0"/>
|
||||
<pt x="493" y="99" on="1"/>
|
||||
<pt x="550" y="195" on="0"/>
|
||||
<pt x="550" y="519" on="0"/>
|
||||
<pt x="493" y="615" on="1"/>
|
||||
<pt x="427" y="729" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="300" y="658" on="1"/>
|
||||
<pt x="396" y="658" on="0"/>
|
||||
<pt x="438" y="555" on="1"/>
|
||||
<pt x="469" y="483" on="0"/>
|
||||
<pt x="469" y="233" on="0"/>
|
||||
<pt x="438" y="159" on="1"/>
|
||||
<pt x="396" y="57" on="0"/>
|
||||
<pt x="204" y="57" on="0"/>
|
||||
<pt x="162" y="159" on="1"/>
|
||||
<pt x="132" y="233" on="0"/>
|
||||
<pt x="132" y="483" on="0"/>
|
||||
<pt x="162" y="555" on="1"/>
|
||||
<pt x="204" y="658" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="unif80c" xMin="0" yMin="-14" xMax="550" yMax="728">
|
||||
<contour>
|
||||
<pt x="307" y="728" on="1"/>
|
||||
<pt x="205" y="728" on="0"/>
|
||||
<pt x="142" y="670" on="1"/>
|
||||
<pt x="76" y="612" on="0"/>
|
||||
<pt x="66" y="508" on="1"/>
|
||||
<pt x="147" y="508" on="1"/>
|
||||
<pt x="154" y="580" on="0"/>
|
||||
<pt x="236" y="658" on="0"/>
|
||||
<pt x="308" y="657" on="1"/>
|
||||
<pt x="378" y="658" on="0"/>
|
||||
<pt x="417" y="622" on="1"/>
|
||||
<pt x="454" y="589" on="0"/>
|
||||
<pt x="454" y="469" on="0"/>
|
||||
<pt x="379" y="404" on="0"/>
|
||||
<pt x="307" y="404" on="1"/>
|
||||
<pt x="252" y="404" on="1"/>
|
||||
<pt x="252" y="340" on="1"/>
|
||||
<pt x="310" y="340" on="1"/>
|
||||
<pt x="385" y="341" on="0"/>
|
||||
<pt x="468" y="269" on="0"/>
|
||||
<pt x="468" y="142" on="0"/>
|
||||
<pt x="425" y="100" on="1"/>
|
||||
<pt x="379" y="56" on="0"/>
|
||||
<pt x="302" y="56" on="1"/>
|
||||
<pt x="235" y="57" on="0"/>
|
||||
<pt x="190" y="93" on="1"/>
|
||||
<pt x="137" y="137" on="0"/>
|
||||
<pt x="134" y="221" on="1"/>
|
||||
<pt x="51" y="221" on="1"/>
|
||||
<pt x="60" y="101" on="0"/>
|
||||
<pt x="136" y="38" on="1"/>
|
||||
<pt x="200" y="-13" on="0"/>
|
||||
<pt x="302" y="-14" on="1"/>
|
||||
<pt x="413" y="-14" on="0"/>
|
||||
<pt x="550" y="111" on="0"/>
|
||||
<pt x="550" y="208" on="1"/>
|
||||
<pt x="550" y="271" on="0"/>
|
||||
<pt x="514" y="313" on="1"/>
|
||||
<pt x="481" y="355" on="0"/>
|
||||
<pt x="418" y="374" on="1"/>
|
||||
<pt x="535" y="414" on="0"/>
|
||||
<pt x="535" y="534" on="1"/>
|
||||
<pt x="535" y="624" on="0"/>
|
||||
<pt x="410" y="728" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
</glyf>
|
||||
|
||||
<name>
|
||||
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
|
||||
Created by font-carrier
|
||||
|
||||
</namerecord>
|
||||
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
.PingFang SC
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
Version 1.0
|
||||
</namerecord>
|
||||
<namerecord nameID="6" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="10" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
Generated by svg2ttf from Fontello project.
|
||||
</namerecord>
|
||||
<namerecord nameID="11" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||
http://fontello.com
|
||||
</namerecord>
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
|
||||
|
||||
Created by font-carrier
|
||||
|
||||
</namerecord>
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||
.PingFang SC
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
|
||||
Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
|
||||
Version 1.0
|
||||
</namerecord>
|
||||
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
|
||||
.PingFang-SC-Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="10" platformID="3" platEncID="1" langID="0x409">
|
||||
Generated by svg2ttf from Fontello project.
|
||||
</namerecord>
|
||||
<namerecord nameID="11" platformID="3" platEncID="1" langID="0x409">
|
||||
http://fontello.com
|
||||
</namerecord>
|
||||
</name>
|
||||
|
||||
<post>
|
||||
<formatType value="2.0"/>
|
||||
<italicAngle value="0.0"/>
|
||||
<underlinePosition value="14"/>
|
||||
<underlineThickness value="0"/>
|
||||
<isFixedPitch value="0"/>
|
||||
<minMemType42 value="0"/>
|
||||
<maxMemType42 value="0"/>
|
||||
<minMemType1 value="0"/>
|
||||
<maxMemType1 value="11"/>
|
||||
<psNames>
|
||||
<!-- This file uses unique glyph names based on the information
|
||||
found in the 'post' table. Since these names might not be unique,
|
||||
we have to invent artificial names in case of clashes. In order to
|
||||
be able to retain the original information, we need a name to
|
||||
ps name mapping for those cases where they differ. That's what
|
||||
you see below.
|
||||
-->
|
||||
</psNames>
|
||||
<extraNames>
|
||||
<!-- following are the name that are not taken from the standard Mac glyph order -->
|
||||
<psName name="unie458"/>
|
||||
<psName name="unif375"/>
|
||||
<psName name="unif80c"/>
|
||||
<psName name="unif12f"/>
|
||||
<psName name="uniee4a"/>
|
||||
<psName name="unif295"/>
|
||||
<psName name="unie449"/>
|
||||
<psName name="unif0d6"/>
|
||||
<psName name="unie44d"/>
|
||||
<psName name="unif712"/>
|
||||
</extraNames>
|
||||
</post>
|
||||
|
||||
</ttFont>
|
37
猿人学练习/12css加密静态css字体加密/readme.md
Normal file
37
猿人学练习/12css加密静态css字体加密/readme.md
Normal file
@ -0,0 +1,37 @@
|
||||
# 知识点:字体反爬
|
||||
|
||||
## 解题思路
|
||||
|
||||
查看请求链接
|
||||
|
||||

|
||||
|
||||
查看元素会看到,采集的数字都是` `
|
||||
|
||||

|
||||
|
||||
观察`css`部分会发现`font-family: "fonteditor" !important;`
|
||||
|
||||

|
||||
|
||||
尝试全局搜索关键词`fonteditor`,发现字体的下载地址
|
||||
|
||||

|
||||
|
||||
将字体放到在线编辑器中查看,发现数字对应的编码和接口返回的结果存在对应关系
|
||||
|
||||

|
||||
|
||||
到这里就可以利用`python`的`fontTools`包进行解析操作
|
||||
|
||||
字体编辑器
|
||||
|
||||
http://font.qqe2.com/
|
||||
|
||||
`Python | fontTools`的使用
|
||||
|
||||
https://zhuanlan.zhihu.com/p/350807659
|
||||
|
||||
`Python`爬虫---刷新你的认知,字体反爬并没有那么简单
|
||||
|
||||
https://zhuanlan.zhihu.com/p/99497149
|
Loading…
x
Reference in New Issue
Block a user