This commit is contained in:
zyronon
2024-03-16 02:10:01 +08:00
parent 745429acaf
commit 8fe2083bb5
954 changed files with 263315 additions and 1034 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,60 @@
import fs from 'fs'
import request from 'request'
import {nanoid} from 'nanoid'
let fileName = './data/user-SUNMENG333.json'
let saveFileStr = fs.readFileSync(fileName, "utf8");
let inputData = JSON.parse(saveFileStr);
let saveFilePath = './imgs/'
const downloadImage = async (src, dest,) => {
console.log('下载:', src)
return new Promise(resolve => {
request.head(src, (err, res, body) => {
if (err) {
console.log(err);
return;
}
src &&
request(src)
.pipe(fs.createWriteStream(dest))
.on("close", () => {
setTimeout(() => resolve(true), 1500)
});
});
})
};
async function test3(list) {
let url = list.pop()
if (url.includes('http')) {
let name = nanoid() + '.png'
await downloadImage(url, saveFilePath + name,)
return [name]
}
return [url]
// fs.writeFileSync(fileName, JSON.stringify(inputData, null, 2));
}
inputData = inputData.slice(0, 70)
console.log(inputData.length)
for (let i = 0; i < inputData.length; i++) {
let v = inputData[i]
console.log(`处理:第${i}个视频:`, v.desc,)
if (v.video?.play_addr?.url_list) {
v.video.play_addr.url_list = [v.video.play_addr.url_list.pop()]
}
try {
if (v.video?.cover?.url_list) {
v.video.cover.url_list = await test3(v.video?.cover?.url_list)
}
if (v.video?.animated_cover) {
delete v.video.animated_cover
}
fs.writeFileSync(fileName, JSON.stringify(inputData, null, 2));
} catch (e) {
console.log('出错了', e)
}
}

85
node/post/process-post.js Normal file
View File

@@ -0,0 +1,85 @@
import fs from 'fs'
let fileName = './post/user-81069823274.json'
const str = fs.readFileSync("./input.json", "utf8");
let inputData = JSON.parse(str);
const saveFileStr = fs.readFileSync(fileName, "utf8");
let saveFileData = JSON.parse(saveFileStr);
// console.log('list', inputData.has_more)
// console.log('f', fs)
inputData.aweme_list.map(v => {
Object.keys(v).map(k => {
if (![
'aweme_id',
'desc',
'create_time',
'music',
'video',
'share_url',
'statistics',
'status',
'text_extra',
'is_top',
'share_info',
'duration',
'image_infos',
'risk_infos',
'position',
'author_user_id',
'prevent_download',
'long_video',
'aweme_control',
'images',
'suggest_words',
].includes(k)) {
delete v[k]
}
})
Object.keys(v.music).map(k => {
if (![
'id',
'title',
'author',
'cover_medium',
'cover_thumb',
'play_url',
'duration',
'user_count',
'owner_id',
'owner_nickname',
'is_original'
].includes(k)) {
delete v.music[k]
}
})
Object.keys(v.video).map(k => {
if (![
'play_addr',
'cover',
'height',
'width',
'ratio',
'use_static_cover',
'duration',
'horizontal_type',
'animated_cover',
].includes(k)) {
delete v.video[k]
}
})
})
saveFileData = saveFileData.concat(inputData.aweme_list)
fs.writeFileSync(
"./ouput.json",
JSON.stringify(inputData.aweme_list, null, 2)
);
fs.writeFileSync(
fileName,
JSON.stringify(saveFileData, null, 2)
);