手把手教你如何使用Python执行js代码.docxVIP

手把手教你如何使用Python执行js代码.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
手把手教你如何使用Python执行js代码 ????各位小伙伴,大家好,这次我们来说一下关于爬虫方向的一个学问,Python如何执行js,快来看看吧!!! 为什么要引出Python执行js这个问题? ????都说术业有专攻,每个言语也都有本人的特长和短处。在爬虫方向,Python确定是扛把子,近几年随着AI的火爆,需要各种各样的数据,所以,爬虫需求也跟着水涨船高起来。 ????我们做爬虫的当然是爬的爽,但是估量人家后台在骂街,到底谁都不期望本人的数据被弄走,所以后台反爬技术也在快速提升,一攻一防就这么在拉锯着。 ????现在为了防止反爬,前端使用的反爬技术比较多的是js代码混淆。 什么是js代码混淆? 正常代码 ????我们现在看一段js代码,代码规律很简约,就是拼接时间前往。 function formatDate(now) { var now = new Date(1230999938); var year=now.getFullYear(); var month=now.getMonth()+1; var date=now.getDate(); var hour=now.getHours(); var minute=now.getMinutes(); var second=now.getSeconds(); return year+-+month+-+date+ +hour+:+minute+:+second; } ???? ????运转一下这段代码,如下图所示。 混淆代码 我任凭找了个在线的js代码混淆网站。 js代码 function formatDate(mz1){var KkkGDiH2=new window[\x44\x61\x74\x65](1230999938);var tsk3=KkkGDiH2[\x67\x65\x74\x46\x75\x6c\x6c\x59\x65\x61\x72]();var YMreyP4=KkkGDiH2[\x67\x65\x74\x4d\x6f\x6e\x74\x68]()+1;var Ozo5=KkkGDiH2[\x67\x65\x74\x44\x61\x74\x65]();var QMYEc$eD6=KkkGDiH2[\x67\x65\x74\x48\x6f\x75\x72\x73]();var JfXVV_Akq7=KkkGDiH2[\x67\x65\x74\x4d\x69\x6e\x75\x74\x65\x73]();var $mP8=KkkGDiH2[\x67\x65\x74\x53\x65\x63\x6f\x6e\x64\x73]();return tsk3+\x2d+YMreyP4+\x2d+Ozo5+ +QMYEc$eD6+\x3a+JfXVV_Akq7+\x3a+$mP8 ????上面这个真的不是我瞎写的,混淆之后就是这样子的,不信看图片。 ????可能我们会有个疑问,js代码都成这玩意了,还能执行吗? 答案是确定的。即便js代码格外乱,但还是可以执行的,结果跟上面的是一样的。 ????这就形成了一个问题,我们在做爬虫时,假如需要,多多少少可能都要争辩一下js代码,然后进行js解密一下,但是,但是,要是代码都混淆成了这了,还怎样解? ????一点规律都看不通了,基本上不行用Python依据js规律重写出来了... ????很巧,小编也是卡在这里...后来我就想,要是Python能执行js代码就好了,不用管函数里面的规律了,只拿函数前往值就好了。 Python第三方包Execjs ????可能是吧,不止我一个人遇到了这种情况,所以大佬们就开发出来这种工具包,用于执行js代码。 安装 ????在安装之前,需要有node环境,这里就不举栗子了,下一步下一步就好了。 pip3 install PyExecJS Execjs用法超级简约的,几行代码。 执行js 注:由于上述js代码会生成window对象,并不能直接执行成功,需要额外的其他协助,这里简约的举一下其他例子。 正常js代码 function add(x, y) { return x + y; } Python执行js代码 import execjs ctx = pile( function add(x, y) { return x + y; } ) print(ctx.call(add, 1, 2)) 执行结果如下图所示: 混淆js代码 function add(bi1,Pl$2){return bi1+Pl$2} Python执行混淆js代码 import execjs ctx = pile( function add(bi1,Pl$

文档评论(0)

liuxiyuliuxingyu + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档