这是一个创建于 3036 天前的主题,其中的信息可能已经有所发展或是发生改变。
之前曾经有过失败的尝试,很多 javascript 第三方库都不能模拟执行
这个东西的目的是,依次访问学生做好的 CSRF 页面,模拟执行里面的 JS ,然后服务器那边统计哪些人的 CSRF 生效了。
当时想写个 Java ,依次模拟访问页面,用的是 HTMLUnit ,结果貌似因为 JS 过于复杂, htmlunit 一直出错。
后来我的解决方法是用普通的 html+js ,按照学生 ID ,依次弹出他们的作业,一秒钟后关掉打开下一个。缺陷是,一旦他们中的哪一个傻子 js alert 了,我就得人工干预,,去点击确定才能继续。
所以想问问机智的你们,有没有别的方法实现?或者是比较完善的能模拟执行 js (包括自动执行 ajax , js 能修改 html 内容之类的)的第三方库?
4 条回复 • 2016-02-26 09:59:47 +08:00
![airycanon](https://cdn.v2ex.com/avatar/c1a4/bf42/67348_normal.png?m=1717727174) |
|
1
airycanon 2016-02-26 09:22:44 +08:00
我只知道 PhantomJS
|
![adeweb](https://cdn.v2ex.com/avatar/46f7/dac0/60852_normal.png?m=1656992799) |
|
2
adeweb 2016-02-26 09:31:41 +08:00
写个 chrome 插件,在指定页面列表注入 js 脚本,这个 js 和当前页面 js 环境是隔离的,让后批量打开页面,统计数据通过 backend.js 传递到服务端。这样可行否?
|
![xujunfu](https://cdn.v2ex.com/avatar/b389/530c/136466_normal.png?m=1448269910) |
|
3
xujunfu 2016-02-26 09:51:54 +08:00
可以用 splinter 啊
|
![reeco](https://cdn.v2ex.com/avatar/7fcd/f083/61311_normal.png?m=1607707298) |
|
4
reeco 2016-02-26 09:59:47 +08:00
|