http://www.cnblogs.com/Charltsing/p/JSDotNetAPI.html

在网页采集中,很多时候需要运行网站下载的某个js文件中的函数,以计算Request参数。VBA直接运行JS函数有很多办法,常见的是通过msscriptcontrol.scriptcontrol或者htmlfile。

在这里,我提供另外一种比较灵活可控的方式来运行js函数。

C#可以调用很多js引擎来执行js代码,比较流行的有Jurassic,Jint ,  Nlua, ClearScript,IronJS,IKVM.NET等很多引擎。如果VBA可以通过C#调用这些引擎,那么我们就可以灵活的运行js函数了。

考虑il本身支持export导出函数接口,所以我做了一个C# dll(无需安装,直接调用),可以以API方式运行其中的函数来执行指定的js函数,并取回结果。

下面提供了一个VBA的调用示例,其它原生语言也可以参考VBA示例来调用这个dll。

运行环境:.NET Framework 4.5.2或更高。

在Windows10 64位和32位下测试通过。(如果电脑速度慢,第一次运行可能需要一点时间来启动jit)

函数声明:

VBA示例运行结果(参数调用有两个例子,一个是字符串方式,一个是Variant方式)

下载

联系QQ:564955427

如果有什么问题可以随时联系我。

最新文章

  1. SecutrCRTt 连接VirtualBox 中的Ubuntu -端口转发
  2. idea使用maven搭建springmvc
  3. Intellij IDEA 工具快捷键
  4. 转载收藏- (TTL与CMOS)电路常识性概念
  5. hdu 3594 仙人掌图
  6. webpack入门(译)
  7. Win7-其中的文件夹或文件已在另一个程序中打开
  8. 删除目录下的所有".svn"文件
  9. readlink
  10. iOS 如何自定义NavigationBar的高度
  11. 怎样用Google APIs和Google的应用系统进行集成(1)----Google APIs简介
  12. vultr centos x64 6.5.x 升级php7.0
  13. HTTP长连接和短连接(转)
  14. Visual Studio Team Services使用教程--Readers tfs组成员添加
  15. Maven项目不打包*.hbm.xml文件
  16. Redis进阶实践之六Redis Desktop Manager连接Windows和Linux系统上的Redis服务
  17. visual studio 2015使用python tools远程调试maya 2016
  18. 【使用指南】ComponentOne Enterprise .NET开发控件集
  19. 线段树区间更新 lazy
  20. kafka中的消费组

热门文章

  1. Jquery复习(四)之text()、html()、val()
  2. 在docker容器中为elasticsearch配置跨域访问
  3. 集合类Hash Set,LinkedHashSet,TreeSet
  4. Spring学习之设计模式,动态代理和gclib动态代理
  5. opencv-python用原图和mask实现抠图
  6. passwd 修改用户密码 / chpasswd 批量更新用户密码
  7. InterlliJ idea文件夹里面无法新建java文件等
  8. 带gcd大数模板
  9. 【洛谷P1220】关路灯
  10. Spring、SpringMVC注解方式整合