diff --git a/lib/duboku2.json b/lib/duboku2.json new file mode 100644 index 0000000..1df211b --- /dev/null +++ b/lib/duboku2.json @@ -0,0 +1,67 @@ +{ + "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1", + "homeUrl": "https://www.duboku.su", + "dcVipFlag": "true", + "pCfgJs": "https://www.duboku.su/static/js/playerconfig.js", + "pCfgJsR": "[\\W|\\S|.]*?MacPlayerConfig.player_list[\\W|\\S|.]*?=([\\W|\\S|.]*?),MacPlayerConfig.downer_list", + "dcShow2Vip": {}, + "dcPlayUrl": "true", + "cateNode": "//ul[contains(@class,'myui-header__menu nav-menu')]/li[contains(@class, 'dropdown-hover')]//div/ul/li/a[contains(@href, 'vodtype') and not(contains(@href,'label'))]", + "cateName": "/text()", + "cateId": "/@href", + "cateIdR": "/vodtype/(\\w+).html", + "cateManual": {}, + "homeVodNode": "//div[contains(@class, 'padding-0')]//ul[contains(@class,'myui-vodlist')]/li//a[contains(@class,'myui-vodlist__thumb')]", + "homeVodName": "/@title", + "homeVodId": "/@href", + "homeVodIdR": "/voddetail/(\\w+).html", + "homeVodImg": "/@data-original", + "homeVodImgR": "\\S+(http\\S+)", + "homeVodMark": "/span[contains(@class,'pic-text')]/text()", + "cateUrl": "https://duboku.su/vodtype/{cateId}-{catePg}.html", + "cateVodNode": "//ul[contains(@class,'myui-vodlist')]//li//a[contains(@class,'myui-vodlist__thumb')]", + "cateVodName": "/@title", + "cateVodId": "/@href", + "cateVodIdR": "/voddetail/(\\w+).html", + "cateVodImg": "/@data-original", + "cateVodImgR": "\\S+(http\\S+)", + "cateVodMark": "/span[contains(@class,'pic-text')]/text()", + "dtUrl": "https://duboku.su/voddetail/{vid}.html", + "dtNode": "//div[contains(@class,'col-lg-wide-75')]", + "dtName": "//div[@class='myui-content__thumb']/a[contains(@class,'myui-vodlist__thumb')]/@title", + "dtNameR": "", + "dtImg": "//div[@class='myui-content__thumb']/a[contains(@class,'myui-vodlist__thumb')]/img/@data-original", + "dtImgR": "\\S+(http\\S+)", + "dtCate": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '分类')]/following-sibling::*/text()", + "dtCateR": "", + "dtYear": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '年份')]/following-sibling::*/text()", + "dtYearR": "", + "dtArea": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '地区')]/following-sibling::*/text()", + "dtAreaR": "", + "dtMark": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '更新')]/following-sibling::*/text()", + "dtMarkR": "", + "dtActor": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '主演')]/following-sibling::*/text()", + "dtActorR": "", + "dtDirector": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '导演')]/following-sibling::*/text()", + "dtDirectorR": "", + "dtDesc": "//div[@class='myui-content__detail']//span[contains(@class,'text-muted') and contains(text(), '简介')]/parent::text()", + "dtDescR": "", + "dtFromNode": "//a[@data-toggle='tab' and contains(@href, 'playlist')]", + "dtFromName": "/text()", + "dtFromNameR": "", + "dtUrlNode": "//div[contains(@class,'tab-content')]/div[contains(@id, 'playlist')]", + "dtUrlSubNode": "//li/a", + "dtUrlId": "@href", + "dtUrlIdR": "/video/(\\S+).html", + "dtUrlName": "/text()", + "dtUrlNameR": "", + "playUrl": "https://duboku.su/video/{playUrl}.html", + "playUa": "", + "searchUrl": "https://duboku.su/index.php/ajax/suggest?mid=1&wd={wd}&limit=10", + "scVodNode": "json:list", + "scVodName": "name", + "scVodId": "id", + "scVodIdR": "", + "scVodImg": "pic", + "scVodMark": "" +}