Compare commits

...

2 Commits

  1. 6
      bot/Bilibili.mjs
  2. 6
      bot/Douyin.mjs
  3. 6
      bot/Kuaishou.mjs
  4. 6
      bot/WebCrawler.mjs
  5. 6
      bot/Xigua.mjs
  6. 9
      lib/common.mjs

6
bot/Bilibili.mjs

@ -99,7 +99,7 @@ class Bilibili extends HeroBot { @@ -99,7 +99,7 @@ class Bilibili extends HeroBot {
//get cover image's base64 data
//sample: //i1.hdslb.com/bfs/archive/ef6204c8788134064dc6b7e8cb20870f1341e604.jpg@100w_100h_1c.png
//替换成://i1.hdslb.com/bfs/archive/ef6204c8788134064dc6b7e8cb20870f1341e604.jpg@480w_270h_1c.png
if (typeof(data.cover) != 'undefined' && data.cover) {
if (typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) == false) {
data.cover = common.getAbsoluteUrl(data.cover);
data.cover = data.cover.replace(/@[\w]+\./ig, '@480w_270h_1c.'); //获取480x270尺寸图片
@ -110,6 +110,10 @@ class Bilibili extends HeroBot { @@ -110,6 +110,10 @@ class Bilibili extends HeroBot {
data.cover_base64 = imgBuffer.toString('base64');
data.cover_type = common.getImageType(data.cover);
}
}else if ( typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) ) {
//support base64 image
data.cover_type = common.getImageType(data.cover);
data.cover_base64 = data.cover.replace(/^data:image\/[a-z]+;base64,/i, '');
}
await hero.close();

6
bot/Douyin.mjs

@ -109,7 +109,7 @@ class Douyin extends HeroBot { @@ -109,7 +109,7 @@ class Douyin extends HeroBot {
//get cover image's base64 data
if (typeof(data.cover) != 'undefined' && data.cover) {
if (typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) == false) {
data.cover = common.getAbsoluteUrl(data.cover);
const response = await hero.goto(data.cover);
@ -119,6 +119,10 @@ class Douyin extends HeroBot { @@ -119,6 +119,10 @@ class Douyin extends HeroBot {
data.cover_base64 = imgBuffer.toString('base64');
data.cover_type = common.getImageType(data.cover);
}
}else if ( typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) ) {
//support base64 image
data.cover_type = common.getImageType(data.cover);
data.cover_base64 = data.cover.replace(/^data:image\/[a-z]+;base64,/i, '');
}
await hero.close();

6
bot/Kuaishou.mjs

@ -61,7 +61,7 @@ class Kuaishou extends HeroBot { @@ -61,7 +61,7 @@ class Kuaishou extends HeroBot {
}
//get cover image's base64 data
if (typeof(data.cover) != 'undefined' && data.cover) {
if (typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) == false) {
data.cover = common.getAbsoluteUrl(data.cover);
const response = await hero.goto(data.cover);
@ -71,6 +71,10 @@ class Kuaishou extends HeroBot { @@ -71,6 +71,10 @@ class Kuaishou extends HeroBot {
data.cover_base64 = imgBuffer.toString('base64');
data.cover_type = common.getImageType(data.cover);
}
}else if ( typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) ) {
//support base64 image
data.cover_type = common.getImageType(data.cover);
data.cover_base64 = data.cover.replace(/^data:image\/[a-z]+;base64,/i, '');
}
await hero.close();

6
bot/WebCrawler.mjs

@ -90,7 +90,7 @@ class WebCrawler extends HeroBot { @@ -90,7 +90,7 @@ class WebCrawler extends HeroBot {
//get cover image's base64 data
if (typeof(data.cover) != 'undefined' && data.cover) {
if (typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) == false) {
data.cover = common.getAbsoluteUrl(data.cover);
const response = await hero.goto(data.cover);
@ -100,6 +100,10 @@ class WebCrawler extends HeroBot { @@ -100,6 +100,10 @@ class WebCrawler extends HeroBot {
data.cover_base64 = imgBuffer.toString('base64');
data.cover_type = common.getImageType(data.cover);
}
}else if ( typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) ) {
//support base64 image
data.cover_type = common.getImageType(data.cover);
data.cover_base64 = data.cover.replace(/^data:image\/[a-z]+;base64,/i, '');
}
await hero.close();

6
bot/Xigua.mjs

@ -70,7 +70,7 @@ class Xigua extends HeroBot { @@ -70,7 +70,7 @@ class Xigua extends HeroBot {
}
//get cover image's base64 data
if (typeof(data.cover) != 'undefined' && data.cover) {
if (typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) == false) {
data.cover = common.getAbsoluteUrl(data.cover);
const response = await hero.goto(data.cover);
@ -80,6 +80,10 @@ class Xigua extends HeroBot { @@ -80,6 +80,10 @@ class Xigua extends HeroBot {
data.cover_base64 = imgBuffer.toString('base64');
data.cover_type = common.getImageType(data.cover);
}
}else if ( typeof(data.cover) != 'undefined' && data.cover && /^data:image\/[a-z]+;base64,/i.test(data.cover) ) {
//support base64 image
data.cover_type = common.getImageType(data.cover);
data.cover_base64 = data.cover.replace(/^data:image\/[a-z]+;base64,/i, '');
}
await hero.close();

9
lib/common.mjs

@ -51,16 +51,17 @@ export default { @@ -51,16 +51,17 @@ export default {
return url;
},
//support base64 format
getImageType: function(url) {
let imgType = 'jpeg';
if (/\.jp(e)?g/ig.test(url)) {
if (/\.jp(e)?g/ig.test(url) || /image\/jp(e)?g/ig.test(url)) {
imgType = 'jpeg';
}else if (/\.png/ig.test(url)) {
}else if (/\.png/ig.test(url) || /image\/png/ig.test(url)) {
imgType = 'png';
}else if (/\.webp?/ig.test(url)) {
}else if (/\.webp?/ig.test(url) || /image\/webp/ig.test(url)) {
imgType = 'webp';
}else if (/\.gif?/ig.test(url)) {
}else if (/\.gif?/ig.test(url) || /image\/gif/ig.test(url)) {
imgType = 'gif';
}

Loading…
Cancel
Save