feat: PageKey增加RSS,默认脚本模板增加parseRss方法
This commit is contained in:
@@ -10,6 +10,7 @@ public enum PageKey {
|
||||
SIGN_IN("signIn", "签到", "POST"),
|
||||
SEARCH("search", "搜索", "GET"),
|
||||
DOWNLOAD("download", "下载", "GET"),
|
||||
RSS("rss", "RSS", "GET"),
|
||||
// detail 仅供脚本内 context.fetch("detail", ...) 使用,medibo 不直接调用
|
||||
DETAIL("detail", "资源详情", "GET");
|
||||
|
||||
|
||||
@@ -8,10 +8,15 @@ Map parse(String content, String url) {
|
||||
if (url.contains('/torrents.php')) return parseSearch(doc)
|
||||
if (url.contains('/torrents.php?id=')) return parseDetail(doc)
|
||||
if (url.contains('/index.php') && !url.contains('?')) return parseUserInfo(doc)
|
||||
if (url.contains('/torrentrss.php') || url.contains('/rss')) return parseRss()
|
||||
|
||||
return [pageName: '未知页面', message: "未配置: ${url}"]
|
||||
}
|
||||
|
||||
private Map parseRss() {
|
||||
return [pageName: 'RSS', message: 'RSS 内容由 Java 层解析']
|
||||
}
|
||||
|
||||
private Map parseUserInfo(doc) {
|
||||
def fields = [:]
|
||||
def stats = utils.selectFirst(doc, '#userinfo_stats, .user_stats, ul.stats')
|
||||
|
||||
@@ -12,10 +12,15 @@ Map parse(String content, String url) {
|
||||
if (url.contains('/api/member/profile')) return parseProfile(root?.data)
|
||||
if (url.contains('/api/tracker/myPeerStatistics')) return parsePeerStats(root?.data)
|
||||
if (url.contains('/api/torrent/search')) return parseSearch(root?.data?.data ?: [])
|
||||
if (url.contains('/torrentrss.php') || url.contains('/rss')) return parseRss()
|
||||
|
||||
return [pageName: '未知接口', message: "未配置: ${url}"]
|
||||
}
|
||||
|
||||
private Map parseRss() {
|
||||
return [pageName: 'RSS', message: 'RSS 内容由 Java 层解析']
|
||||
}
|
||||
|
||||
private Map parseProfile(d) {
|
||||
if (!d) return [pageName: '用户信息', message: 'data 为空']
|
||||
return [pageName: '用户信息', fields: [
|
||||
|
||||
@@ -9,10 +9,15 @@ Map parse(String content, String url) {
|
||||
if (url.contains('/attendance.php')) return parseSign(doc)
|
||||
if (url.contains('/index.php') && !url.contains('?')) return parseUserInfo(doc)
|
||||
if (url.contains('/usercp.php')) return parseUserPanel(doc)
|
||||
if (url.contains('/torrentrss.php') || url.contains('/rss')) return parseRss(doc)
|
||||
|
||||
return [pageName: '未知页面', message: "未配置: ${url}"]
|
||||
}
|
||||
|
||||
private Map parseRss(doc) {
|
||||
return [pageName: 'RSS', message: 'RSS 内容由 Java 层解析']
|
||||
}
|
||||
|
||||
private Map parseUserInfo(doc) {
|
||||
def fields = [:]
|
||||
def el = doc.selectFirst('#info_block, td.bottom.clearfix, .userbar')
|
||||
|
||||
@@ -16,9 +16,15 @@ Map parse(String content, String url) {
|
||||
} catch (e) {}
|
||||
}
|
||||
|
||||
if (url.contains('/torrentrss.php') || url.contains('/rss')) return parseRss()
|
||||
|
||||
return [pageName: '未知页面', message: "未配置: ${url}"]
|
||||
}
|
||||
|
||||
private Map parseRss() {
|
||||
return [pageName: 'RSS', message: 'RSS 内容由 Java 层解析']
|
||||
}
|
||||
|
||||
private Map parseApiData(d, url) {
|
||||
if (url.contains('/user') || url.contains('/profile'))
|
||||
return [pageName: '用户', fields: [username: d?.username, uploaded: d?.uploaded?.toString(), downloaded: d?.downloaded?.toString()]]
|
||||
|
||||
Reference in New Issue
Block a user