python爬虫执行js代码-execjs

时间秒杀一切 提交于 2019-12-02 14:53:36

一.安装模块

pip install PyExecJS

execjs会自动使用当前电脑上的运行时环境(建议用nodejs,与Phantomjs)

二.简单的使用

import execjs

js_obj = execjs.compile('js字符串')
js_obj.call('js字符串中方法',参数)

三.js字符串中模拟浏览器环境

即导入documentwindow对象

一.安装依赖

npm install jsdom

二.导入包

js_obj = execjs.compile('js字符串',cwd='node_modules')

三.js字符串中添加抬头

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
window = dom.window;
document = window.document;
XMLHttpRequest = window.XMLHttpRequest;

一.安装模块

pip install PyExecJS

execjs会自动使用当前电脑上的运行时环境(建议用nodejs,与Phantomjs)

二.简单的使用

import execjs

js_obj = execjs.compile('js字符串')
js_obj.call('js字符串中方法',参数)

三.js字符串中模拟浏览器环境

即导入documentwindow对象

一.安装依赖

npm install jsdom

二.导入包

js_obj = execjs.compile('js字符串',cwd='node_modules')

三.js字符串中添加抬头

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
window = dom.window;
document = window.document;
XMLHttpRequest = window.XMLHttpRequest;
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!