说明
本文提供的代码仅供参考。
可能有些地方在最新版本的Auto.js上面需要做修改,才能运行。
Auto.js简介
Auto.js是利用安卓系统的“辅助功能”实现类似于按键精灵一样,可以通过代码模拟一系列界面动作的辅助工作。
与“按键精灵”不同的是,它的模拟动作并不是简单的使用在界面定坐标点来实现,而是类似与win一般,找窗口句柄来实现的。
Auto.js使用JavaScript作为脚本语言,目前使用Rhino 1.7.7.2作为脚本引擎,支持ES5与部分ES6特性。
开发文档
Auto.js Pro开发文档优化版
文档尚在完善中,可能有文档描述和代码实际行为有出入的情况。
模板、样式、generator来自Node.js。
为什么要使用Auto.js Pro开发脚本,有什么特点?
吸引我使用Auto.js Pro的原因有很多。最主要的几个原因是:
- Auto.js Pro能开发免ROOT的安卓脚本
- Auto.js Pro基于节点操作,能开发全分辨率的脚本,自动适配各种安卓机型
- Auto.js Pro丰富的UI组件,能自定义各种样式的安卓界面
- Auto.js Pro使用的javascript的语法比较优雅,代码可读性强
- Auto.js Pro的命令库非常的丰富,接口比较多
- Auto.js Pro脚本文件体积比较小。1000行的代码,打包后的apk文件只有3-5M,还没有广告
相关教程
Auto.js Pro安卓全分辨率免ROOT引流脚本开发教程
示例代码
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
/**
* 作者: 家
* 功能: 提取QQ收藏的完整内容,保留原文本格式
* 注意: 需要将jsoup放到/sdcard/jsoup.jar
* 注意: jsoup第一次加载需要几秒钟,之后就很快
*/
//此代码由飞云脚本圈整理提供(www.feiyunjs.com)
console.show()
runtime.loadJar('/sdcard/jsoup.jar')
importClass("org.jsoup.Jsoup")
importClass("java.io.IOException")
importClass("java.util.HashMap")
importClass("org.jsoup.Jsoup")
importClass("org.jsoup.nodes.Document")
importClass("org.jsoup.nodes.Element")
importClass("org.jsoup.select.Elements")
var url = "https://sharechain.qq.com/b9084714857c5d5bb2a2ef4d775f4e24";
var r = http.get(url, {
headers: {
'Accept-Language': 'zh-cn,zh;q=0.5',
'User-Agent': 'Mozilla/5.0(Macintosh;IntelMacOSX10_7_0)AppleWebKit/535.11(KHTML,likeGecko)Chrome/17.0.963.56Safari/535.11'
}
});
var result = r.body.string()
// result = result.match(/window.syncData.*?script/)
result = result.match(/<script type="text\/javascript">window.syncData.*?<\/script>/)
result = result[0]
result = result.match(/window.syncData = {.*}/)
result = result[0]
result = result.replace("window.syncData = ", '')
result = result.replace(/(\\n|\\u003Cbr \/>)/g, '这个一会要换成换行符')
//
result = JSON.parse(result)
result = result.shareData
result = result.html_content
var doc = Jsoup.parseBodyFragment(result);
var body = doc.body();
result = Jsoup.parse(body).text()
result = result.replace(/这个一会要换成换行符/g, '\n')
log(result)