execjs

Running jQuery in Ruby

五迷三道 提交于 2021-02-18 17:43:28
问题 I want to run jQuery in a Ruby application and use it to manipulate an HTML string. (Yes, I know there are other Ruby libraries that can handle that task, but I have a good reason for using jQuery in this case.) Is this possible? I know that I can use ExecJS to execute simple JavaScript code in my Ruby application, but jQuery doesn't seem to be working: irb(main):001:0> require 'execjs' => true irb(main):002:0> require 'open-uri' => true irb(main):003:0> context = ExecJS.compile(open("http:/

Running jQuery in Ruby

♀尐吖头ヾ 提交于 2021-02-18 17:43:06
问题 I want to run jQuery in a Ruby application and use it to manipulate an HTML string. (Yes, I know there are other Ruby libraries that can handle that task, but I have a good reason for using jQuery in this case.) Is this possible? I know that I can use ExecJS to execute simple JavaScript code in my Ruby application, but jQuery doesn't seem to be working: irb(main):001:0> require 'execjs' => true irb(main):002:0> require 'open-uri' => true irb(main):003:0> context = ExecJS.compile(open("http:/

How to replace therubyracer javascript runtime

杀马特。学长 韩版系。学妹 提交于 2021-02-10 14:33:25
问题 How do I replace the therubyracer gem? I'm really stuck. We have been using the therubyracer gem for our Rails asset pipeline. However, it is using dependencies which are past their end of life and have security vulnerabilities. The latest version 0.12.3 is from January 05, 2017. I have looked at the mini_racer gem, but we deploy to FreeBSD and the latest version supported on FreeBSD is 0.1.14 from August 24, 2017. We develop on macOS and my compile of this version of mini_racer gets errors,

前端 js 校验机制绕过(burp、sqlmap 可用)

喜你入骨 提交于 2020-12-01 12:53:33
作者:L3B1anc 本文为作者投稿,Seebug Paper 期待你的分享,凡经采用即有礼品相送! 投稿邮箱:paper@seebug.org 最近做银行系统比较多,遇到了很多前端校验导致无法重放也不能上扫描器和sqlmap,最后想出来了个解决办法针对js的校验可以直接绕过 最近做测试的时候,一顿测完0 high 0 medium 0 low,想着上扫描器和sqlmap一顿梭哈的时候,发现请求包一重放就失效了,这样交报告那也不能够啊,只能想想怎么绕过这个防重放机制了。 1、发现验证机制 用burp对比了同样的两个请求,发现两个请求之间不同的只有H_TIME,H_NONCE,H_SN三个参数了,其中H_TIME一看就是时间戳。 按照经验来说,这种类似token的值,应该是每次请求页面都会去从服务器端生成一个新的token值,通过这个token值来进行防重放的。然而,发送请求后,发现返回的包里面的参数和提交请求的参数是一样的,那这样就只剩一种情况了,就是前端通过js生成校验码发送到服务器进行校验的。 F12大法搜搜两个关键字,发现还是某tong他老人家的安全机制,接着看看这个getUID的代码, getUID:function(){ var s = []; var hexDigits = "0123456789abcdef"; for (var i = 0; i < 36; i++)

Python使用pyexecjs代码案例解析

安稳与你 提交于 2020-08-10 06:07:42
针对现在大部分的网站都是使用js加密,js加载的,并不能直接抓取出来,这时候就不得不适用一些三方类库来执行js语句 execjs,一个比较好用且容易上手的类库(支持py2,与py3),支持 JS runtime。 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:1097524789 官网: 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

Python爬虫入门教程 62-100 30岁了,想找点文献提高自己,还被反爬了,Python搞起,反爬第2篇

我们两清 提交于 2020-04-26 19:53:50
学术搜索 学习理论的知识少不了去检索文献,好多文献为你的实操提供了合理的支撑,我所在的大学内网默认是有知网账户的,非常NICE 今天要完成的网站是 http://ac.scmor.com/ Google学术搜索是一个文献检索服务,目前主要是提供维普资讯、万方数据等几个学术文献资源库的检索服务。通过Google学术搜索只能够查找到这些学术资料的“报告、摘要及引用内容... 来源百度百科 我们的目标 获取现在访问的链接地址,当你使用谷歌浏览器的开发者工具抓取的时候,得到的是一个js加密函数 注意看上图 2 的位置,接下来,我们采用上篇博客的方式,去尝试获取visit函数的具体内容 我们要在所有的请求链接中去检索一个visit方法,注意步骤 双击方法名,进入 找到核心方法 function visit(url) { var newTab = window.open('about:blank'); if(Gword!='') url = strdecode(url); // var newTab = window.open(url); newTab.location.href = url; //newTab.location.reload(true); } 发现url在跳转前调用了一个 strdecode 函数,你只需要关注这个函数的实现就可以了 再次查看visit的调用函数

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

两盒软妹~` 提交于 2020-04-25 09:49:11
一、Python执行JS代码--PyExecJS、PyV8、Js2Py 1.1、PyExecJS    PyExecJS 的优点是您不需要照顾 JavaScript 环境。 特别是,它可以在 Windows 环境中运行,而无需安装额外的库。 PyExecJS 的 缺点之一是性能 。 PyExecJS 通过文本传达 JavaScript 运行时,并且运行缓慢。另一个缺点是它不完全支持运行时特定的功能。 对于某些用例, PyV8 可能是更好的选择。 安装之前先安装 JS 环境, Node.js 安装好了,就可以安装接下来的库了。 安装: pip3 install -i https://pypi.douban.com/simple PyExecJS import execjs execjs.get().name # 查看调用的环境 'Node.js (V8)' ctx = execjs.compile( """ function add(x, y) { return x + y; } """ ) print (ctx.call( " add " , 1, 2)) # 3 with open( " enc.js " , " r " , encoding= " utf-8 " ) as f: #执行js文件 js = execjs.compile(f.read()) url = js

ActionView::Template::Error: No such file or directory @ unlink_internal - C:/Users/Javi/AppData/Local/Temp/execjs201504 29-7844-j0j83vjson

元气小坏坏 提交于 2019-12-25 03:43:13
问题 When I run my tests, the controller one fails claiming that it can't find any views/categories/new.html.erb file. This is the failure: $ rake test:controllers DL is deprecated, please use Fiddle Run options: --seed 30439 # Running: E Finished in 2.486100s, 0.4022 runs/s, 0.0000 assertions/s. 1) Error: CategoriesControllerTest#test_new: ActionView::Template::Error: No such file or directory @ unlink_internal - C:/Users/Javi/AppData/Local/Temp/execjs201504 29-7768-ntpk2ujson app/views/layouts

ExecJS::ProgramError: Unexpected token: name (option)

China☆狼群 提交于 2019-12-23 07:51:46
问题 My app runs fine on local environment. I was trying to git push a build to heroku. My commands are: bundle install git add . git commit -am "abcdef" git push heroku master I then encountered an issue with assets:precompile remote: -----> Preparing app for Rails asset pipeline remote: Running: rake assets:precompile remote: I, [2016-01-04T08:32:35.471098 #1018] INFO -- : Writing /tmp/build_5d68c6d2f7845ca719a5f77705a12798/public/assets/recruiters

TypeError: Object doesn't support this property or method

落爺英雄遲暮 提交于 2019-12-19 03:55:14
问题 I have created rails application where I created a database (empty). When I try to view my products page, I receive the following error on my http://localhost:3000/products page. Before migrating the database, the application did function. I am using therubyracer and am on Windows 7. ExecJS::ProgramError in Products#index Showing C:/RailsInstaller/DevKit/home/JP/nameofapp/app/views/layouts/application.html.erb where line #16 raised: TypeError: Object doesn't support this property or method