# @sxyzdev/scrapers

Modern web scraping solution for collecting data from various platforms. Built with performance and ease of use in mind.

![npm](https://img.shields.io/npm/v/@sxyzdev/scrapers) ![GitHub](https://img.shields.io/github/license/SxyzZenith/scrapers)

## Overview

`@sxyzdev/scrapers` provides a collection of reliable scrapers for extracting data from popular websites. Perfect for building automation tools, bots, or any application requiring structured web data.

## Features

- Fast and efficient data extraction
- Built-in rate limiting and request handling
- ESM (ECMAScript Modules) support
- Regularly maintained and updated
- Easy integration with WhatsApp bots
- Minimal dependencies

## Installation

```bash
# Using npm
npm install @sxyzdev/scrapers

# Using yarn
yarn add @sxyzdev/scrapers

# Using pnpm
pnpm add @sxyzdev/scrapers
```

## Quick Start

```javascript
// ESM import
import { instagram, tiktok } from '@sxyzdev/scrapers';

// Instagram post data
const getPost = async () => {
  const data = await instagram.post('https://www.instagram.com/p/example');
  console.log(data);
};

// TikTok video info
const getVideo = async () => {
  const data = await tiktok.video('https://www.tiktok.com/@user/video/123');
  console.log(data);
};
```

## Supported Platforms

Currently supporting data extraction from:
- Instagram
- TikTok
- Twitter
- YouTube
- Facebook
_(More platforms coming soon)_

## Documentation

### Bahasa Indonesia 🇮🇩

`@sxyzdev/scrapers` adalah modul ESM untuk mengumpulkan data dari berbagai platform media sosial dan website populer. Cocok digunakan untuk:
- Bot WhatsApp
- Aplikasi web scraping
- Analisis data media sosial
- Automasi konten

### English 🇬🇧

Detailed documentation for each platform:

#### Instagram
```javascript
import { instagram } from '@sxyzdev/scrapers';

// Get post data
const post = await instagram.post(url);

// Get user profile
const profile = await instagram.user(username);
```

#### TikTok
```javascript
import { tiktok } from '@sxyzdev/scrapers';

// Get video data
const video = await tiktok.video(url);

// Get user info
const user = await tiktok.user(username);
```

## Contributing

Contributions are welcome! Please read our [Contributing Guide](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.

## License

MIT License - see the [LICENSE](LICENSE) file for details.

## Support

- Report issues on [GitHub](https://github.com/SxyzZenith/scrapers/issues)

## Acknowledgments

Thanks to all contributors who have helped make this project possible.