我取消了一个网站脚本,我遇到了一个变量
var string = "\x61\x48\x52\x30\x63\x44\x6f\x76\x4c\x33\x42\x73\x64\x43\x35\x68\x62\x6d\x6c\x74\x5a\x57\x68\x6c\x59\x58\x5a\x6c\x62\x69\x35\x6c\x64\x53\x7c\x72\x63\x33\x6c\x6b\x63\x32\x51\x76\x51\x6c\x38\x74\x58\x31\x52\x6f\x5a\x56\x7c\x43\x5a\x57\x64\x70\x62\x6d\x35\x70\x62\x6d\x63\x74\x4c\x54\x45\x74\x4c\x54\x45\x31\x4d\x6a\x41\x77\x4e\x44\x51\x78\x4d\x7a\x63\x75\x62\x58\x41\x30\x50\x33\x64\x33\x4e\x58\x63\x30\x4d\x51\x3d\x3d"
它是长字符串的一部分,所以我将它作为子字符串变量存储在python中,如下所示:
假设拥有我需要的脚本的div存储在一个div
变量中,因此script = div.script.text
返回我需要的脚本,然后我搜索上面从st = script.find("var string=")
开始的字符串和这个字符串的结尾end = script.find(";", k)
,现在我可以使用string = script[st + 11: end - 1]
形成这个字符串,现在如果我运行print(string)
它就会打印出来
"\x61\x48\x52\x30\x63\x44\x6f\x76\x4c\x33\x42\x73\x64\x43\x35\x68\x62\x6d\x6c\x74\x5a\x57\x68\x6c\x59\x58\x5a\x6c\x62\x69\x35\x6c\x64\x53\x7c\x72\x63\x33\x6c\x6b\x63\x32\x51\x76\x51\x6c\x38\x74\x58\x31\x52\x6f\x5a\x56\x7c\x43\x5a\x57\x64\x70\x62\x6d\x35\x70\x62\x6d\x63\x74\x4c\x54\x45\x74\x4c\x54\x45\x31\x4d\x6a\x41\x77\x4e\x44\x51\x78\x4d\x7a\x63\x75\x62\x58\x41\x30\x50\x33\x64\x33\x4e\x58\x63\x30\x4d\x51\x3d\x3d"
但我无法得到它的实际值,在终端中运行python将显示以下结果
>>> string = "\x61\x48\x52\x30\x63\x44\x6f\x76\x4c\x33\x42\x73\x64\x43\x35\x68\x62\x6d\x6c\x74\x5a\x57\x68\x6c\x59\x58\x5a\x6c\x62\x69\x35\x6c\x64\x53\x7c\x72\x63\x33\x6c\x6b\x63\x32\x51\x76\x51\x6c\x38\x74\x58\x31\x52\x6f\x5a\x56\x7c\x43\x5a\x57\x64\x70\x62\x6d\x35\x70\x62\x6d\x63\x74\x4c\x54\x45\x74\x4c\x54\x45\x31\x4d\x6a\x41\x77\x4e\x44\x51\x78\x4d\x7a\x63\x75\x62\x58\x41\x30\x50\x33\x64\x33\x4e\x58\x63\x30\x4d\x51\x3d\x3d"
>>> string
'aHR0cDovL3BsdC5hbmltZWhlYXZlbi5ldS|rc3lkc2QvQl8tX1RoZV|CZWdpbm5pbmctLTEtLTE1MjAwNDQxMzcubXA0P3d3NXc0MQ=='
那'aHR0cDovL3BsdC5hbmltZWhlYXZlbi5ldS|rc3lkc2QvQl8tX1RoZV|CZWdpbm5pbmctLTEtLTE1MjAwNDQxMzcubXA0P3d3NXc0MQ=='
是我需要的,那么如何得到它呢?你知道吗
我很早以前就找到了解决方法,但忘了把答案贴出来,所以很抱歉那些遇到同样问题的人。你知道吗
首先,我们需要通过删除
\x
来转义十六进制字符串:删除
\x
之后,我们生成了一个十六进制字符串,因此,要获取它的值,我们执行以下操作:您的字符串是Base64编码的—它有特定的外观,并且结尾的} module 将其转换回字节字符串。你知道吗
==
是一个完全的赠品。可以使用^{您可以使用
ast.literal_eval
,因为所讨论的Javascript字符串文字也是有效的Python字符串文字。你知道吗相关问题 更多 >
编程相关推荐