Python使用pyexecjs代码案例解析


Posted in Python onJuly 13, 2020

针对现在大部分的网站都是使用js加密,js加载的,并不能直接抓取出来,这时候就不得不适用一些三方类库来执行js语句

execjs,一个比较好用且容易上手的类库(支持py2,与py3),支持 JS runtime。

官网:https://pypi.org/project/PyExecJS/

# pip install pyexecjs
# 一node.js为引擎

# 检测运行环境

import execjs
print(execjs.get().name)

最简单的代码案例 使用eval执行js代码

import execjs
e = execjs.eval('a=new Array(1,2,3)')
print(e)

如何处理内容比较多的js呢

str1 = """
 function test(data){
  return data;
 }
"""
# 先吧字符串编译成js代码
cx_js = execjs.compile(str1)
# 调用call方法去执行js代码
a = cx_js.call("test", "122") # 第一个为函数名,后面的为参数,多的就用逗号隔开
print(a)

"""如果是比较大的js内容呢 我们可以先保存到文件中,然后读取编译,在执行"""

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python密码错误三次锁定(实例讲解)
Nov 14 Python
python中闭包Closure函数作为返回值的方法示例
Dec 17 Python
Numpy之random函数使用学习
Jan 29 Python
Python一个简单的通信程序(客户端 服务器)
Mar 06 Python
python支付宝支付示例详解
Aug 22 Python
python多线程扫描端口(线程池)
Sep 04 Python
用pytorch的nn.Module构造简单全链接层实例
Jan 14 Python
python代码实现TSNE降维数据可视化教程
Feb 28 Python
PyCharm GUI界面开发和exe文件生成的实现
Mar 04 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
使用keras根据层名称来初始化网络
May 21 Python
如何Python使用re模块实现okenizer
Apr 30 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 #Python
解决python 虚拟环境删除包无法加载的问题
Jul 13 #Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
Jul 13 #Python
Python使用itcaht库实现微信自动收发消息功能
Jul 13 #Python
解决Pycharm 中遇到Unresolved reference 'sklearn'的问题
Jul 13 #Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
Jul 13 #Python
浅析Python 抽象工厂模式的优缺点
Jul 13 #Python
You might like
php 静态变量的初始化
2009/11/15 PHP
探讨方法的重写(覆载)详解
2013/06/08 PHP
php上传图片客户端和服务器端实现方法
2015/03/30 PHP
php恢复数组的key为数字序列的方法
2015/04/28 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
解决微信授权回调页面域名只能设置一个的问题
2016/12/11 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
屏蔽F1~F12的快捷键的js函数
2010/05/06 Javascript
Jquery 一次处理多个ajax请求的代码
2011/09/02 Javascript
利用CSS、JavaScript及Ajax实现高效的图片预加载
2013/10/16 Javascript
js 判断控件获得焦点的示例代码
2014/03/04 Javascript
Web打印解决方案之证件套打的实现思路
2016/08/29 Javascript
jQuery事件与动画基础详解
2017/02/23 Javascript
JSONP跨域请求
2017/03/02 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
vue基于element-ui的三级CheckBox复选框功能的实现代码
2018/10/15 Javascript
vue动画效果实现方法示例
2019/03/18 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
vue集成一个支持图片缩放拖拽的富文本编辑器
2021/01/29 Vue.js
[51:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第二局
2016/03/03 DOTA
[01:07:20]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第二场 2月2日
2021/03/11 DOTA
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
2018/03/15 Python
Python基于更相减损术实现求解最大公约数的方法
2018/04/04 Python
在python中实现强制关闭线程的示例
2019/01/22 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
2019/07/07 Python
Python Django框架模板渲染功能示例
2019/11/08 Python
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
基层工作经历证明
2014/01/13 职场文书
大学生通用个人自我评价
2014/04/27 职场文书
导师就业推荐信范文
2014/05/22 职场文书
颐和园的导游词
2015/01/30 职场文书
2016年社区综治宣传月活动总结
2016/03/16 职场文书
python爬取新闻门户网站的示例
2021/04/25 Python