最近在爬一个js数据加密的网站的时候,出了点问题,困扰了我两天

直接运行js文件的时候正常,但是用execjs运行js代码的时候总是会报错

最后翻了很多博客之后,终于找到了原因:原因是有一个程序在使用TextIOWrapper 类创建对象时默认使用了gbk编码,读取不了utf-8的字符,
所以我们可以修改下 subprocess.py 文件的默认编码方式为utf-8即可

图中本来是encoding=None,修改成encoding='utf-8'

运行成功,完美

execjs执行js代码报错:Exception in thread Thread-1的更多相关文章

  1. 关于前段JS代码报错问题的解决方法

    最近接手别人的一个项目,项目导入到Myeclipse中,JS代码一直报错,说missing semicolon.该错误是Myeclipse在检查JS代码的过程出现的. 后来经过检查,发现JS代码本身没 ...

  2. 爬虫之python3用execjs执行JS代码

    JS运行环境 Node.js 是Javascript语言服务器端运行环境 安装和配置:https://www.runoob.com/nodejs/nodejs-install-setup.html 测 ...

  3. kettle用mysql创建资源库执行sql代码报错

    一.原因:  sql语句里边使用 'Y' 'N'  给boolean类型的赋值产生sql失败    二.解决方法:将insert语句中‘Y’或‘N’ 改成TRUE或FALSE即可,共两张表3个地方  ...

  4. 本地Chrome测试JS代码报错:XMLHttpRequest cannot load

    这种file跨域问题在火狐下是不存在的 解决Chrome下file跨域问题: 在Chrome应用程序下,右键属性,目标处添加"--allow-file-access-from-files&q ...

  5. java中执行js代码

    要在java中执行js代码,首先明白,java不支持浏览器本身的方法.支持自定义的js方法,否则会报错 先新建一个js文件:jsss.js 内容如下: function aa(a,b){ return ...

  6. 17-Python执行JS代码--PyExecJS、PyV8、Js2Py

    一.Python执行JS代码--PyExecJS.PyV8.Js2Py 1.1.PyExecJS PyExecJS的优点是您不需要照顾JavaScript环境.特别是,它可以在Windows环境中运行 ...

  7. eclipse中的js文件报错的解决办法

    在使用别人的项目的时候,导入到eclipse中发现js文件报错,解决办法是关闭eclipse的js校验功能. 三个步骤: 1. 右键点击项目->properties->Validation ...

  8. 点击超链接执行js代码实现确认操作

    如题,本次是要实现点击超链接实现执行js代码,并确认是否删除数据库数据,采用php. 首先链接数据库,查询数据库数据: 1: <?php 2: $dbms='mysql'; //数据库类型 ,对 ...

  9. Java执行js代码

    在做项目中有时候需要用到Java调用js文件执行相应的方法 在JDK1.6添加了新的ScriptEngine类,允许用户直接执行js代码. import org.junit.Test; import ...

随机推荐

  1. jmeter源代码开发环境构建

    1.下载jmeter源码:http://jmeter.apache.org/download_jmeter.cgi 2.新建-->java Project-->Next-->src- ...

  2. Oracle 性能之 Enq: CF - contention

    Oracle 性能之 Enq: CF - contention Table of Contents 1. 原因 2. 解决问题 2.1. 针对持有锁进程类型处理 2.1.1. 查看持有锁会话的进程类型 ...

  3. Java界面程序实现图片的放大缩小

    Java界面程序实现图片的放大缩小.这个程序简单地实现了图片的打开.保存.放大一倍.缩小一倍和固定缩放尺寸,但是并没有过多的涵盖对图片的细节处理,只是简单地实现了图片大小的放缩. 思维导图如下: 效果 ...

  4. UFIDA

    充分匹配了‘用友’的中文品牌的含义,即‘与用户真诚合作,做用户可靠朋友’.其中‘U’代表‘User’,即用户:‘FID’表示忠诚.信任,来源于 Fidelity(诚实)等英文词的词根:助音词‘A’放在 ...

  5. 使用robotframework做接口测试4——搞定接口签名及密码加密

    接口签名是我做接口测试撞到的第一块石头,刚到新公司,本来想默默憋出来一个大招,然后碰到了签名接口,直接给跪了.于是只好找开发哥哥帮忙,把签名算法的java文件拿到,一行行对着用python实现了一遍. ...

  6. Object.assign()的用法 -- 用于将所有可枚举属性的值从一个或多个源对象复制到目标对象,返回目标对象

    语法: Object.assign(target, …sources) target: 目标对象,sources: 源对象用于将所有可枚举属性的值从一个或多个源对象复制到目标对象.它将返回目标对象. ...

  7. httpClient 进行get请求

    String url = baseUrl; logger.info("checkIfTheFolderIsExist"); CloseableHttpClient httpClie ...

  8. Jmeter使用CSV Data参数化,中文参数传递过程出现乱码问题

    解决方式:文件编码改为GB2312.GBK.GB18030(utf-8同样会乱码)

  9. MODFLOW几个版本的区别

    GWF = GroundWater Flow MODFLOW-2005 — the GWF Model contains revisions of the commonly used flow pac ...

  10. cisco RIP(传闻协议)Routing information protocol

    Corp(config)#rout rip Corp(config-router)#network 10.0.0.0 10.0.0.0/24 is subnetted, 5 subnets C 10. ...