Scrape Ephoto360
Ephoto360 adalah platform yang menyediakan berbagai efek foto menarik, termasuk efek foto yang mengubah gambar Anda menjadi karya seni dengan berbagai tema.

Muhamad Nur Ibad
7 Januari 2025•1 menit baca

Scraping Image Effects from Ephoto360
Ephoto360 adalah platform yang menyediakan berbagai efek foto menarik, termasuk efek foto yang mengubah gambar Anda menjadi karya seni dengan berbagai tema. Dengan menggunakan Ephoto360 Scrape, kita bisa melakukan scraping untuk mengunduh dan memproses gambar secara otomatis.
Berikut adalah penjelasan mengenai bagaimana cara melakukan scraping gambar efek dari Ephoto360 menggunakan Node.js dan beberapa paket seperti axios, cheerio, dan form-data. Skrip ini dapat digunakan untuk memproses gambar secara otomatis tanpa harus membuka platform secara manual.
Deskripsi
Scrape efek gambar dari Ephoto360. Ini adalah alat yang berguna untuk mendapatkan efek gambar secara otomatis melalui link Ephoto360. Fitur ini akan memungkinkan Anda untuk memproses gambar dari URL yang diberikan dan mendapatkan hasilnya secara otomatis.
Kode
import axios from "axios";
import FormData from "form-data";
import * as cheerio from "cheerio";
/**
* Scraped By Kaviaann
* Protected By MIT LICENSE
* Whoever caught removing wm will be sued
* @description Scraping and processing image from ephoto360
* @author Kaviaann 2024
* @copyright https://whatsapp.com/channel/0029Vac0YNgAjPXNKPXCvE2e
*/
export async function ephoto(data) {
return new Promise(async (resolve, reject) => {
try {
// Cek apakah URL valid
if (!/https:\/\/en\.ephoto360\.com/.test(data.url)) throw new Error("Enter valid ephoto360 link!");
const _url = new URL(data.url);
const headers = {
Host: _url.host,
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_7_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Mobile/15E148 Safari/604.1",
Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
Referer: _url.origin + "/",
};
// Mengambil data dan cookies dari URL
let { headers: _h, data: _d } = await axios.get(data.url, { headers })
.catch((e) => {
console.error(e);
throw new Error("Failed to get data and cookies");
});
let $ = cheerio.load(_d);
let cookie = _h?.["set-cookie"]
?.map((v) => v.split(";")?.[0])
.concat([ "_gid=GA1.2.2049497982.1735890412;", "_ga=GA1.1.1367664911.1735890412;" ])
.join(";");
// Mendapatkan token dan server ID untuk pemrosesan
const _cred = {
token: $("input#token").val(),
server: $("input#build_server").val(),
id: $("input#build_server_id").val(),
};
// Menyusun data form untuk dikirim
let d = new FormData();
d.append("text[]", data.stext);
data.btext && d.append("text[]", data.btext);
d.append("submit", "GO");
d.append("token", _cred.token);
d.append("build_server", _cred.server);
d.append("build_server_id", _cred.id);
// Mengirim request untuk memproses gambar
let _r = await axios.post(data.url, d, {
headers: { ...d.getHeaders(), ...headers, cookie, origin: _url.origin, referer: data.url },
}).then((v) => v.data)
.catch((e) => { throw new Error("Failed to post request! : " + e); });
$ = cheerio.load(_r);
d = JSON.parse($("input#form_value_input").val() || "{}");
// Mengirim data untuk membuat gambar
_r = await axios.post(_url.origin + "/effect/create-image", d, {
headers: {
...headers,
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
"x-requested-with": "XMLHttpRequest",
},
}).then((v) => v.data)
.catch((e) => { throw new Error(`Failed to create image : ${e}`); });
if (!_r.success) throw new Error("Create image is not success " + _r.info);
delete _r.info;
await new Promise((res) => setTimeout(res, 5000));
return resolve({ success: true, info: "Created by Kaviaann", image: d.build_server.replace("/", "/").concat(_r.image), name: _r.image.split("/").pop() });
} catch (e) {
return reject(e);
}
});
}
Penjelasan Kode
Verifikasi URL: Skrip memverifikasi apakah URL yang diberikan berasal dari ephoto360.com.
Pengambilan Data & Cookies: Skrip menggunakan axios untuk mengakses halaman yang dimaksud dan mengambil cookies yang diperlukan untuk pemrosesan selanjutnya.
Form Data: Menggunakan form-data untuk mengirimkan teks dan data yang diperlukan melalui POST ke server ephoto360.
Menghasilkan Gambar: Setelah proses data berhasil, skrip akan membuat gambar efek dan mengembalikannya dalam format gambar yang siap digunakan.
Penggunaan
Untuk menggunakan skrip ini, Anda hanya perlu memanggil fungsi ephoto dengan memberikan URL dari Ephoto360 dan teks yang ingin diterapkan pada gambar. Fungsi ini kemudian akan mengembalikan URL gambar hasil proses efek dari Ephoto360.
Contoh penggunaan
ephoto({ url: "https://en.ephoto360.com/some-photo-effect", stext: "Text you want to apply to the photo" })
.then(response => console.log("Gambar berhasil dibuat!", response))
.catch(err => console.error("Terjadi kesalahan", err));
Catatan
Proses ini masih mengandalkan URL gambar dan teks, yang artinya tidak ada dukungan untuk input gambar langsung di versi ini.
Update mendatang akan menambahkan fitur dukungan input gambar secara langsung.
Dengan menggunakan skrip ini, Anda dapat dengan mudah mengakses dan memproses gambar dari Ephoto360, menghemat waktu dan usaha dalam membuat gambar dengan efek yang menarik.
Sumber: https://whatsapp.com/channel/0029Vac0YNgAjPXNKPXCvE2e