如何在程序中实现chrome的console运行结果呢

看雪山海间 2020-11-30 12:11:37
我有一段生成footlocker网站的cookie的js代码(产出cookie的js代码A),打开footlocker网站(chrome浏览器),F12,调出console,粘贴进去,回车,能够正常运行出现结果。如果在baidu网站F12调出console运行,则出现跨域的错误。
现在想用python编写代码来实现这个过程获取cookie,用了jsdom(s代码里还有window、document等变量,还涉及到window.innerWidth,document.body.clientWidth、window.XDomainRequest、navigator等)
import execjs

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;

function getCookie() {
//产出cookie的js代码A
return cookie;
}
}'''
p = execjs.compile(js, cwd=r'./node_modules')
print p.call('getCookie')

运行不能获取结果,返回的是None,是否也是跨域的问题?请教这个到底怎么办?
...全文
1500 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
葉幺 2020-12-21
  • 打赏
  • 举报
回复
如果控制台又出现错误 最好也截图上来
看雪山海间 2020-12-20
  • 打赏
  • 举报
回复
自己顶一下!

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧