Compare commits
6 Commits
19ecee362a
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 6c48d0be1d | |||
| 8e5976f226 | |||
| 62eea37625 | |||
| 21533025ba | |||
| 5137d188eb | |||
|
5dc5043525
|
2
app.js
2
app.js
@@ -75,7 +75,7 @@ app.use(async (ctx,next)=>{
|
||||
|
||||
const bodyParser = require('koa-bodyparser');
|
||||
app.use(bodyParser());
|
||||
// console.log(requter())
|
||||
// console.log(requter().stack)
|
||||
app.use(requter());
|
||||
app.listen(3004);
|
||||
console.log("http://localhost:3004")
|
||||
@@ -5,7 +5,7 @@ find = require("./find")
|
||||
imglist = require("./picture")
|
||||
section = require("./section")
|
||||
let name = "新新漫画"
|
||||
let version = "20.01.06"
|
||||
let version = "22.02.01"
|
||||
let type = 1
|
||||
module.exports = {
|
||||
name,
|
||||
|
||||
@@ -29,7 +29,7 @@ let getcontlist = async (text) => {
|
||||
|
||||
let gethtml = async (name) => {
|
||||
name = qs.escape(name)
|
||||
let url = `https://so.177mh.net/k.php?k=${name}`
|
||||
let url = `https://so.77mh.in/k.php?k=${name}`
|
||||
// console.log(url)
|
||||
let text = ""
|
||||
await axios.get(url).then((a) => {
|
||||
@@ -45,6 +45,7 @@ let gethtml = async (name) => {
|
||||
// console.log(error)
|
||||
}
|
||||
list = {name:"新新漫画",list}
|
||||
console.log(list)
|
||||
return list
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ const cheerio = require('cheerio');
|
||||
const axios = require('axios')
|
||||
let getscript = async (url) => {
|
||||
let text;
|
||||
url = "https://www.177mh.net" + url
|
||||
url = "https://www.77mh.in" + url
|
||||
// console.log(url)
|
||||
await axios.get(url).then((res)=>{
|
||||
// text = res.text
|
||||
|
||||
@@ -5,7 +5,7 @@ find = require("./find")
|
||||
imglist = require("./picture")
|
||||
section = require("./section")
|
||||
let name = "古风漫画"
|
||||
let version = "19.12.26"
|
||||
let version = "22.02.01"
|
||||
let type = 1
|
||||
module.exports = {
|
||||
name,
|
||||
|
||||
@@ -22,7 +22,7 @@ let getcontlist = async (text) => {
|
||||
|
||||
let gethtml = async (name, page) => {
|
||||
name = qs.escape(name)
|
||||
let url = `https://www.gufengmh8.com/search/?keywords=${name}&page=${page}`
|
||||
let url = `https://www.gufengmh9.com/search/?keywords=${name}&page=${page}`
|
||||
// console.log(url)
|
||||
let text = ""
|
||||
await axios.get(url).then((a) => {
|
||||
@@ -38,6 +38,7 @@ let gethtml = async (name, page) => {
|
||||
// console.log(error)
|
||||
}
|
||||
list = {name:"古风漫画",list}
|
||||
console.log(list)
|
||||
return list
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ const cheerio = require('cheerio');
|
||||
const axios = require('axios')
|
||||
let getscript = async (url) => {
|
||||
let text;
|
||||
url = "https://www.gufengmh8.com" + url
|
||||
url = "https://www.gufengmh9.com" + url
|
||||
await axios.get(url).then((res)=>{
|
||||
// text = res.text
|
||||
// console.log(res.data)
|
||||
@@ -27,8 +27,8 @@ let getscript = async (url) => {
|
||||
// nextChapterData 下一页信息
|
||||
// 页面地址为 基础url + 页信息.id
|
||||
// console.log({ imghost, chapterPath, chapterImages, pageTitle, pageUrl, prevChapterData, nextChapterData, pageImage })
|
||||
let down = pageUrl.replace("https://www.gufengmh8.com","") + nextChapterData.id + ".html"
|
||||
let upurl = pageUrl.replace("https://www.gufengmh8.com","") + prevChapterData.id + ".html"
|
||||
let down = pageUrl.replace("https://www.gufengmh9.com","") + nextChapterData.id + ".html"
|
||||
let upurl = pageUrl.replace("https://www.gufengmh9.com","") + prevChapterData.id + ".html"
|
||||
list = { imghost, chapterPath, chapterImages, pageTitle, pageUrl, prevChapterData, nextChapterData, pageImage,down,upurl }
|
||||
// console.log(list)
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@ let gethtml = async (name, page) => {
|
||||
// console.log(error)
|
||||
}
|
||||
list = {name:"漫画DB",list}
|
||||
console.log(list)
|
||||
return list
|
||||
|
||||
|
||||
@@ -49,7 +50,7 @@ let getlist = (name) => {
|
||||
try {
|
||||
let html;
|
||||
html = await gethtml(name, 1)
|
||||
console.log(JSON.stringify(html))
|
||||
// console.log(JSON.stringify(html))
|
||||
res(html);
|
||||
} catch (error) {
|
||||
rej([])
|
||||
|
||||
@@ -5,7 +5,7 @@ find = require("./find")
|
||||
imglist = require("./picture")
|
||||
section = require("./section")
|
||||
let name = "扑飞漫画"
|
||||
let version = "20.02.27"
|
||||
let version = "22.02.01"
|
||||
let type = 1
|
||||
module.exports = {
|
||||
name,
|
||||
|
||||
@@ -1,87 +1,23 @@
|
||||
const puppeteer = require('puppeteer');
|
||||
const urlencode = require('urlencode-gb2312-ignore');
|
||||
const cheerio = require('cheerio')
|
||||
let mainurl = "http://www.pufei8.com"
|
||||
let axios = require('axios')
|
||||
var iconv = require('iconv-lite')
|
||||
let mainurl = "http://www.pufei.cc"
|
||||
let gethtml = (name) => {
|
||||
return new Promise(async (res, rej) => {
|
||||
puppeteer.launch({
|
||||
headless: true,
|
||||
args: ['--no-sandbox', '--disable-setuid-sandbox','--blink-settings=imagesEnabled=false']
|
||||
}).then(async (browser) => {
|
||||
|
||||
const page = await browser.newPage();
|
||||
await page.evaluateOnNewDocument(() => {
|
||||
Object.defineProperty(navigator, 'webdriver', { get: ()=> false });
|
||||
});
|
||||
try {
|
||||
await page.goto(mainurl);
|
||||
} catch (error) {
|
||||
browser.close()
|
||||
res([])
|
||||
}
|
||||
await page.click(".searchtext1")
|
||||
await page.type(".searchtext1", name);
|
||||
// const usernameValue = await page.$eval(".searchtext1", el => el.value);
|
||||
await page.click("#btnSend1")
|
||||
let openpages = []
|
||||
let num = 0;
|
||||
let set = setInterval(async () => {
|
||||
await browser.pages().then((res) => {
|
||||
// console.log(res.length)
|
||||
openpages = res
|
||||
})
|
||||
try {
|
||||
await openpages[2].content().then((r) => {
|
||||
// console.log(r)
|
||||
if (r.indexOf("没有搜索到相关的内容") != -1 || r.indexOf("您当前的位置") != -1) {
|
||||
// console.log(r)
|
||||
res(r)
|
||||
clearInterval(set)
|
||||
browser.close()
|
||||
|
||||
} else {
|
||||
throw error;
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
} catch (error) {
|
||||
num++
|
||||
// console.log(num)
|
||||
if (num > 10) {
|
||||
res([])
|
||||
clearInterval(set)
|
||||
browser.close()
|
||||
|
||||
}
|
||||
// console.log(err)
|
||||
// res([])
|
||||
|
||||
}
|
||||
}, 500);
|
||||
// setTimeout(async () => {
|
||||
// await browser.pages().then((res) => {
|
||||
// // console.log(res.length)
|
||||
// openpages = res
|
||||
// })
|
||||
// try {
|
||||
// await openpages[2].content().then((r) => {
|
||||
// // console.log(r)
|
||||
// res(r)
|
||||
// })
|
||||
// browser.close()
|
||||
|
||||
// } catch (error) {
|
||||
// res([])
|
||||
// browser.close()
|
||||
|
||||
// }
|
||||
|
||||
// // console.log(a)
|
||||
// // await page.content().then((r)=>{
|
||||
// // res(r)
|
||||
// // })
|
||||
// }, 2000);
|
||||
name = urlencode(name,"gb2312")
|
||||
let seach = `orderby=1&myorder=1&tbname=mh&tempid=3&show=title%2Cplayer%2Cplayadmin%2Cbieming%2Cpinyin&keyboard=${name}&Submit=%CB%D1%CB%F7%C2%FE%BB%AD`
|
||||
|
||||
axios.post(mainurl + "/e/search/index.php",seach,{
|
||||
headers:{
|
||||
"Content-Type": "application/x-www-form-urlencoded"
|
||||
},
|
||||
responseType: "arraybuffer"
|
||||
}).then((r)=>{
|
||||
// console.log(r.data)
|
||||
// res(r.data)
|
||||
r.data = iconv.decode(r.data,"gb2312")
|
||||
res(r.data)
|
||||
})
|
||||
})
|
||||
}
|
||||
@@ -119,9 +55,8 @@ let get = (name) => {
|
||||
}
|
||||
list.push(l)
|
||||
})
|
||||
// console.log(list)
|
||||
list = { name: "扑飞漫画", list }
|
||||
|
||||
console.log(list)
|
||||
res(list);
|
||||
} catch (error) {
|
||||
rej([])
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
const cheerio = require('cheerio');
|
||||
const axios = require('axios')
|
||||
const iconv = require("iconv-lite")
|
||||
let mainurl = "http://www.pufei8.com"
|
||||
let mainurl = "http://www.pufei.cc"
|
||||
let getscript = async (url) => {
|
||||
let text;
|
||||
let imglist = [] // 图片列表
|
||||
let scrurl = "" //图片域名
|
||||
let baseurl = "" //图片基本url
|
||||
// console.log(mainurl)
|
||||
url = mainurl + url
|
||||
// console.log(url)
|
||||
console.log(url)
|
||||
await axios({url,responseType: 'arraybuffer',headers:{
|
||||
'User-Agent': `Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36`
|
||||
}}).then((res)=>{
|
||||
@@ -41,7 +42,7 @@ let getscript = async (url) => {
|
||||
await axios({url : scrurl,responseType: 'arraybuffer'}).then((res)=>{
|
||||
// text = res.text
|
||||
let scr = iconv.decode(res.data, 'gbk');
|
||||
scr=scr.substring(scr.indexOf("//分割获取id"),scr.indexOf("console.log(mh[4]);"))
|
||||
scr=scr.substring(scr.indexOf("imgserver = 'http://res.img.220012.net/';"),scr.indexOf("console.log(mh[4]);"))
|
||||
// scr=scr.substring(scr.indexOf("current_img_base = photosr[page];") + 33,scr.indexOf("if (current_img_base.indexOf('http://') != -1 ) {"))
|
||||
// let WebimgServer = []
|
||||
// let WebimgServerURL = []
|
||||
|
||||
@@ -5,7 +5,7 @@ find = require("./find")
|
||||
imglist = require("./picture")
|
||||
section = require("./section")
|
||||
let name = "塔多漫画"
|
||||
let version = "20.01.02"
|
||||
let version = "22.02.01"
|
||||
let type = 1
|
||||
module.exports = {
|
||||
name,
|
||||
|
||||
@@ -1,81 +1,22 @@
|
||||
const puppeteer = require('puppeteer');
|
||||
const urlencode = require('urlencode-gb2312-ignore');
|
||||
const cheerio = require('cheerio')
|
||||
let mainurl = "http://www.taduo.net/"
|
||||
let axios = require('axios')
|
||||
var iconv = require('iconv-lite')
|
||||
let mainurl = "https://www.taduo.net"
|
||||
let gethtml = (name) => {
|
||||
return new Promise(async (res, rej) => {
|
||||
puppeteer.launch({
|
||||
headless: true,
|
||||
args: ['--no-sandbox', '--disable-setuid-sandbox','--blink-settings=imagesEnabled=false']
|
||||
}).then(async (browser) => {
|
||||
|
||||
const page = await browser.newPage();
|
||||
await page.evaluateOnNewDocument(() => {
|
||||
Object.defineProperty(navigator, 'webdriver', { get: ()=> false });
|
||||
});
|
||||
// await page.goto(mainurl);
|
||||
try {
|
||||
await page.goto(mainurl);
|
||||
} catch (error) {
|
||||
console.log("err")
|
||||
browser.close()
|
||||
res([])
|
||||
}
|
||||
await page.type(".searchtext1", name);
|
||||
// const usernameValue = await page.$eval(".searchtext1", el => el.value);
|
||||
await page.click("#btnSend1")
|
||||
let openpages = []
|
||||
let num = 0;
|
||||
let set = setInterval(async () => {
|
||||
await browser.pages().then((res) => {
|
||||
// console.log(res.length)
|
||||
openpages = res
|
||||
})
|
||||
try {
|
||||
await openpages[2].content().then((r) => {
|
||||
// console.log(r)
|
||||
if(r.indexOf("没有搜索到相关的内容") != -1 || r.indexOf("您当前的位置") !=-1){
|
||||
res(r)
|
||||
clearInterval(set)
|
||||
browser.close()
|
||||
|
||||
}else{
|
||||
throw error;
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
} catch (error) {
|
||||
num++
|
||||
// console.log(num)
|
||||
if(num > 10){
|
||||
res([])
|
||||
clearInterval(set)
|
||||
browser.close()
|
||||
|
||||
}
|
||||
// console.log(err)
|
||||
// res([])
|
||||
|
||||
}
|
||||
}, 500);
|
||||
// setTimeout(async () => {
|
||||
// await browser.pages().then((res) => {
|
||||
// // console.log(res.length)
|
||||
// openpages = res
|
||||
// })
|
||||
// try {
|
||||
// await openpages[2].content().then((r) => {
|
||||
// res(r)
|
||||
// })
|
||||
// browser.close()
|
||||
|
||||
// } catch (error) {
|
||||
// res([])
|
||||
// browser.close()
|
||||
|
||||
// }
|
||||
// }, 1500);
|
||||
|
||||
name = urlencode(name,"gb2312")
|
||||
let seach = `orderby=1&myorder=1&tbname=mh&tempid=3&show=title%2Cplayer%2Cplayadmin%2Cbieming%2Cpinyin&keyboard=${name}&Submit=%CB%D1%CB%F7`
|
||||
axios.post(mainurl + "/e/search/index.php",seach,{
|
||||
headers:{
|
||||
"Content-Type": "application/x-www-form-urlencoded"
|
||||
},
|
||||
responseType: "arraybuffer"
|
||||
}).then((r)=>{
|
||||
// console.log(r.data)
|
||||
// res(r.data)
|
||||
r.data = iconv.decode(r.data,"gb2312")
|
||||
res(r.data)
|
||||
})
|
||||
})
|
||||
}
|
||||
@@ -113,9 +54,8 @@ let get = (name) => {
|
||||
}
|
||||
list.push(l)
|
||||
})
|
||||
// console.log(list)
|
||||
list = {name:"塔多漫画",list}
|
||||
|
||||
console.log(list)
|
||||
res(list);
|
||||
} catch (error) {
|
||||
rej([])
|
||||
|
||||
@@ -6,11 +6,11 @@ function addMapping(router, mapping) {
|
||||
if (url.startsWith('GET ')) {
|
||||
var path = url.substring(4);
|
||||
router.get(path, mapping[url]);
|
||||
// console.log(`register URL mapping: GET ${path}`);
|
||||
console.log(`register URL mapping: GET ${path}`);
|
||||
} else if (url.startsWith('POST ')) {
|
||||
var path = url.substring(5);
|
||||
router.post(path, mapping[url]);
|
||||
// console.log(`register URL mapping: POST ${path}`);
|
||||
console.log(`register URL mapping: POST ${path}`);
|
||||
} else {
|
||||
console.log(`invalid URL: ${url}`);
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ let findlist = async (ctx, next) => {
|
||||
// }
|
||||
|
||||
// }
|
||||
console.log("/find111")
|
||||
let pro = []
|
||||
let list = []
|
||||
for (let i in reptilelist) {
|
||||
@@ -54,7 +55,7 @@ let findlist = async (ctx, next) => {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
console.log(1111)
|
||||
ctx.body = JSON.stringify(list)
|
||||
}
|
||||
let section = async (ctx, next) => {
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"axios": "^0.19.0",
|
||||
"cheerio": "^1.0.0-rc.3",
|
||||
"fs": "^0.0.1-security",
|
||||
"iconv-lite": "^0.5.0",
|
||||
"iconv-lite": "^0.6.3",
|
||||
"koa": "^2.11.0",
|
||||
"koa-bodyparser": "^4.2.1",
|
||||
"koa-router": "^7.4.0",
|
||||
@@ -22,6 +22,7 @@
|
||||
"querystring": "^0.2.0",
|
||||
"request": "^2.88.0",
|
||||
"superagent": "^5.1.2",
|
||||
"urlencode-gb2312-ignore": "^1.0.3",
|
||||
"webp-batch-convert": "^0.0.8"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user