# Kiryuu Scraper

**Kiryuu Manga Scraper** adalah sebuah paket Node.js untuk mengambil informasi detail, melakukan pencarian, dan mengunduh manga dari situs Kiryuu. Paket ini menggunakan `axios` untuk permintaan HTTP, `cheerio` untuk scraping data dari HTML, dan `fs` untuk penulisan file.

## Fitur

- Mengambil detail manga dari halaman manga spesifik.
- Mencari manga berdasarkan kata kunci.
- Mengunduh file manga dari halaman manga atau chapter.

## Instalasi

Install paket ini menggunakan npm:

```bash
npm install kiryuu-scraper
```

## Penggunaan

Berikut adalah contoh penggunaan untuk setiap fungsi yang tersedia.

### 1. Mengambil Detail Manga

Anda dapat mengambil detail dari manga tertentu dengan memberikan URL dari halaman manga.

```javascript
import { mangadetails } from 'kiryuu-scraper';

(async () => {
    try {
        const details = await mangadetails('https://kiryuu.org/manga/one-piece/');
        console.log(details);
    } catch (error) {
        console.error('Error:', error.message);
    }
})();
```
## Contoh Respon
```Json
{
    "title": "Example Manga",
    "altTitle": "Another Title",
    "thumbnail": "https://kiryuu.org/wp-content/uploads/example-thumbnail.jpg",
    "rating": "8.5",
    "description": "This is a brief description of Example Manga.",
    "latestChapter": "Chapter 10",
    "latestChapterUrl": "https://kiryuu.org/manga/example-manga/chapter-10/",
    "status": "Ongoing",
    "type": "Shounen",
    "released": "2021",
    "author": "John Doe",
    "artist": "Jane Smith",
    "serialization": "Weekly Shounen Jump",
    "postedBy": "Uploader123",
    "postedOn": "2021-07-01",
    "updatedOn": "2021-07-15",
    "views": "15000",
    "url": "https://kiryuu.org/manga/example-manga/"
}
```
### 2. Mencari Manga

Anda dapat mencari manga dengan kata kunci tertentu.

```javascript
import { mangasearch } from 'kiryuu-scraper';

(async () => {
    try {
        const results = await mangasearch('naruto');
        console.log(results);
    } catch (error) {
        console.error('Error:', error.message);
    }
})();
```
## Contoh Respon
```Json
[
    {
        "title": "Naruto",
        "link": "https://kiryuu.org/manga/naruto/",
        "thumbnail": "https://kiryuu.org/wp-content/uploads/naruto-thumbnail.jpg",
        "chapter": "Chapter 700",
        "rating": "9.0"
    },
    {
        "title": "Naruto Shippuden",
        "link": "https://kiryuu.org/manga/naruto-shippuden/",
        "thumbnail": "https://kiryuu.org/wp-content/uploads/naruto-shippuden-thumbnail.jpg",
        "chapter": "Chapter 700",
        "rating": "9.5"
    }
]
```
### 3. Mengunduh Manga

Anda dapat mengunduh file manga dari halaman manga atau chapter.

```javascript
import { mangadownload } from 'kiryuu-scraper';

(async () => {
    try {
        const filePath = await mangadownload('https://kiryuu.org/manga/one-piece/chapter-1000/');
        console.log('File downloaded to:', filePath);
    } catch (error) {
        console.error('Error:', error.message);
    }
})();
```
## Contoh Respon 
```Json
{
    "filePath": "/path/to/your/directory/example-manga-chapter-1.zip"
}
```
## API

### `mangadetails(url: string): Promise<object>`

Mengambil detail dari manga berdasarkan URL spesifik.

**Parameter:**

- `url` (string): URL dari halaman manga di Kiryuu.

**Mengembalikan:**

- `Promise<object>`: Objek berisi detail manga.

### `mangasearch(query: string): Promise<array>`

Mencari manga berdasarkan query.

**Parameter:**

- `query` (string): Kata kunci pencarian.

**Mengembalikan:**

- `Promise<array>`: Daftar hasil pencarian manga.

### `mangadownload(url: string): Promise<string>`

Mengunduh file manga dari URL spesifik.

**Parameter:**

- `url` (string): URL dari halaman manga atau chapter di Kiryuu.

**Mengembalikan:**

- `Promise<string>`: Path dari file yang telah diunduh.

## Error Handling

Semua fungsi yang disediakan akan melemparkan error jika terjadi masalah, seperti jika URL tidak valid atau tidak ada hasil yang ditemukan. Pastikan Anda menangkap error ini dengan menggunakan `try...catch`.

## Lisensi

Paket ini dilisensikan di bawah MIT License. Lihat file [LICENSE](./LICENSE) untuk detail lebih lanjut.

## Kontribusi

Kontribusi terbuka untuk siapa saja. Jika Anda menemukan bug atau ingin menambahkan fitur baru, silakan kirimkan pull request atau buat issue di repository GitHub.

---

Terima kasih telah menggunakan **Kiryuu Scraper**!
```
