autojs脚本引擎调用java的jsoup爬取科学网博客的指定id的好友名字
作者:互联网
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
说明
本文提供的代码仅供参考。
可能有些地方在最新版本的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引流脚本开发教程
示例代码
// 时间 2019 1 8
// 脚本作用: autojs使用jsoup的demo
// 脚本内容: 爬取科学网 博客的 指定id的好友名字
// 需要导入jsoup.
// jsoupDemo.js
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")
function Spider(url) {
this.CrawlName = function (url) {
var tmp = new HashMap();
try {
var doc = Jsoup.connect(url)
.header("User-Agent",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36")
.get();
var links = doc.select("dt a");
links = links.toArray()
for (let i = 0; i < links.length; i++) {
var link = links[i]
if (link.hasAttr("style")) {
tmp.put(parseInt(link.attr("href").substring(link.attr("href").indexOf("uid=") + 4)), link.attr("title"));
}
}
log(tmp)
return (tmp);
} catch (e) {
log(e)
}
return (null);
}
var data = this.CrawlName(url);
this.getName = function (id) {
if (data != null) {
log('id: %d - name: %s', id, data.get(id));
}
}
}
s = new Spider("http://blog.sciencenet.cn/home.php?mod=space&uid=215715&do=friend&view=me&from=space");
s.getName(71079);
标签:java,Auto,Pro,科学网,js,jsoup,importClass,id 来源: https://blog.csdn.net/feiyunjs/article/details/94726555