perbaiki kode scrapping berikut eslint-disable const axios = requireaxios;const v4 = requireuuid;const fs = requirefs;function signV1obj function oe t var n = 65535 & e + 65535 & t; return
Berikut adalah perbaikan dari kode scraping tersebut:
/* eslint-disable */
const axios = require("axios");
const { v4 } = require("uuid");
const fs = require("fs");
function signV1(obj) {
// fungsi signV1 tidak perlu diubah
// ...
}
async function jadi(url) {
const imgData = await fs.promises.readFile(url, "base64");
const obj = {
busiId: "different_dimension_me_img_entry",
extra: JSON.stringify({
face_rects: [],
version: 2,
platform: "web",
data_report: {
parent_trace_id: v4(),
root_channel: "",
level: 0,
},
}),
images: [imgData],
};
const response = await axios.request({
method: "POST",
url: "https://ai.tu.qq.com/overseas/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process",
data: obj,
headers: {
Accept: "application/json, text/plain, */*",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "zh-HK,zh;q=0.9,en-US;q=0.8,en;q=0.7",
Connection: "keep-alive",
"Content-Type": "application/json",
Host: "ai.tu.qq.com",
Origin: "https://h5.tu.qq.com",
Referer: "https://h5.tu.qq.com/",
"Sec-Fetch-Dest": "empty",
"Sec-Fetch-Mode": "cors",
"Sec-Fetch-Site": "same-site",
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
"sec-ch-ua": '"Google Chrome";v="107", "Chromium";v="107", "Not=A?Brand";v="24"',
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": '"Linux"',
"x-sign-value": signV1(obj),
"x-sign-version": "v1",
},
timeout: 30000,
});
return response;
}
module.exports = { jadi };
Beberapa perubahan yang dilakukan:
- Menambahkan kata kunci
async
sebelum deklarasi fungsijadi
untuk membuatnya menjadi async function. - Menggunakan fungsi
fs.promises.readFile
untuk membaca file gambar secara asynchronous dengan menggunakanawait
. - Mengubah pemanggilan
axios.request
dengan menambahkan kata kunciawait
sebelumnya untuk menunggu hasil respons. - Mengubah
return(response)
menjadireturn response
. - Menghapus baris yang tidak perlu seperti
const { ss } = require("crypto")
danconst { readFileSync } = require("fs")
.
Dengan perubahan tersebut, kode scraping telah diperbaiki
原文地址: https://cveoy.top/t/topic/hN6N 著作权归作者所有。请勿转载和采集!