To bypass cloudflare security
npm install bycfInstal modul menggunakan npm:
``bash`
npm install shannz-cf
Mengambil cookies dan headers yang diperlukan untuk melewati challenge WAF (seperti Cloudflare) pada URL target, memungkinkan request HTTP non-browser berikutnya.
| Parameter | Tipe | Diperlukan | Deskripsi |
| :--- | :--- | :--- | :--- |
| url | string | Ya | URL yang dilindungi WAF. |proxy
| | string | Tidak | Alamat proxy opsional (user:pass@host:port). |
Contoh:
`javascript
const { shannz: cf } = require('shannz-cf');
async function getSession() {
try {
const session = await cf.wafSession("https://example.com/protected", "host:port");
console.log("Cookies:", session.cookies);
console.log("User-Agent:", session.headers['User-Agent']);
} catch (error) {
console.error("Gagal mendapatkan WAF Session:", error.message);
}
}
`
-----
Menyelesaikan challenge Cloudflare Turnstile menggunakan mode injeksi/minimum yang cepat. Mengembalikan token respons yang dapat diverifikasi di sisi server.
| Parameter | Tipe | Diperlukan | Deskripsi |
| :--- | :--- | :--- | :--- |
| url | string | Ya | URL halaman yang menampung widget Turnstile. |siteKey
| | string | Ya | Kunci situs (Site Key) dari widget Turnstile. |proxy
| | string | Tidak | Alamat proxy opsional. |
Contoh:
`javascript`
const token = await cf.turnstileMin(
"https://forms.com/login",
"0x4AAAAAAAT-yE...", // Site Key
"host:port"
);
console.log("Token Turnstile Min:", token);
-----
Menyelesaikan challenge Cloudflare Turnstile menggunakan mode maksimum (simulasi interaksi pengguna alami). Lebih andal pada kasus yang ketat. Mengembalikan token respons.
| Parameter | Tipe | Diperlukan | Deskripsi |
| :--- | :--- | :--- | :--- |
| url | string | Ya | URL halaman yang menampung widget Turnstile. |proxy
| | string | Tidak | Alamat proxy opsional. |
-----
Mengambil source code HTML yang sudah di-render oleh JavaScript dari URL target. Berguna untuk mengambil konten yang dimuat secara dinamis.
| Parameter | Tipe | Diperlukan | Deskripsi |
| :--- | :--- | :--- | :--- |
| url | string | Ya | URL target. |proxy
| | string | Tidak | Alamat proxy opsional. |
Contoh:
`javascript`
const htmlSource = await cf.getSource("https://spa-website.com/");
console.log("HTML Source:", htmlSource.substring(0, 200) + "...");
-----
Mengambil statistik operasional internal dari Browser Service yang digunakan oleh API.
| Parameter | Tipe | Diperlukan | Deskripsi |
| :--- | :--- | :--- | :--- |
| Tidak ada | | | Mengembalikan data status dan statistik browser. |
-----
Semua fungsi akan melempar Error jika:
1. Permintaan gagal pada tingkat jaringan (koneksi terputus, DNS gagal).
2. Respons API memiliki success: false (misalnya, parameter hilang, atau solusi challenge gagal).
Disarankan untuk selalu membungkus pemanggilan API dengan blok try...catch`.