amazon prime scrap özelliği eklendi

This commit is contained in:
2025-11-23 16:09:39 +03:00
parent 46d75b64d5
commit fefa6627e9
6 changed files with 988 additions and 28 deletions

View File

@@ -1,6 +1,6 @@
# metascraper
Netflix URL'lerinden film ve dizi meta verilerini (başlık, yıl, sezon bilgisi) çıkaran modern Node.js kütüphanesi.
Netflix ve Amazon Prime Video URL'lerinden film ve dizi meta verilerini (başlık, yıl, sezon bilgisi, thumbnail görseli) çıkaran modern Node.js kütüphanesi.
## 🚀 Kurulum
@@ -22,7 +22,10 @@ console.log(movie);
// "id": "82123114",
// "name": "ONE SHOT with Ed Sheeran",
// "year": "2025",
// "seasons": null
// "seasons": null,
// "thumbnail": "https://occ-0-7335-778.1.nflxso.net/dnm/api/v6/6AYY37jfdO6hpXcMjf9Yu5cnmO0/AAAABSkrIGPSyEfSWYQzc8rEFo6EtVV6Ls8WtPpNwR42MSKSNPNomZWV5P_l2MxGuJEkoPm71UT_eBK_SsTEH8pRslQr0sjpdhVHjxh4.jpg",
// "info": "Ed Sheeran, matematiğin mucizevi gücünü ve müziğin birleştirici gücünü sergileyen benzersiz bir performansla sahneye çıkıyor.",
// "genre": "Belgesel"
// }
```
@@ -38,22 +41,48 @@ console.log(series);
// "id": "80189685",
// "name": "The Witcher",
// "year": "2025",
// "seasons": "4 Sezon"
// "seasons": "4 Sezon",
// "thumbnail": "https://occ-0-7335-778.1.nflxso.net/dnm/api/v6/6AYY37jfdO6hpXcMjf9Yu5cnmO0/AAAABSkrIGPSyEfSWYQzc8rEFo6EtVV6Ls8WtPpNwR42MSKSNPNomZWV5P_l2MxGuJEkoPm71UT_eBK_SsTEH8pRslQr0sjpdhVHjxh4.jpg",
// "info": "Mutasyona uğramış bir canavar avcısı olan Rivyalı Geralt, insanların çoğunlukla yaratıklardan daha uğursuz olduğu, karmaşa içindeki bir dünyada kaderine doğru yol alıyor.",
// "genre": "Aksiyon"
// }
```
### Amazon Prime Video Meta Verisi
```javascript
import { scraperPrime } from 'metascraper';
const movie = await scraperPrime('https://www.primevideo.com/-/tr/detail/0NHIN3TGAI9L7VZ45RS52RHUPL/ref=share_ios_movie');
console.log(movie);
// {
// "url": "https://www.primevideo.com/detail/0NHIN3TGAI9L7VZ45RS52RHUPL",
// "id": "0NHIN3TGAI9L7VZ45RS52RHUPL",
// "name": "Little Women",
// "year": "2020",
// "seasons": null,
// "thumbnail": "https://m.media-amazon.com/images/S/pv-target-images/c1b08ebea5ba29c47145c623e7d1c586290221ec12fa93850029e581f54049c4.jpg",
// "info": "In the years after the Civil War, Jo March lives in New York and makes her living as a writer, while her sister Amy studies painting in Paris.",
// "genre": "Dram"
// }
```
### URL Normalizasyonu
URL normalizasyonu artık `scraperNetflix` fonksiyonu içinde otomatik olarak yapılır.
URL normalizasyonu artık `scraperNetflix` ve `scraperPrime` fonksiyonları içinde otomatik olarak yapılır.
## ✨ Özellikler
-**Film ve Dizi Destekli** - Her tür Netflix içeriği için meta veri
-**Çoklu Platform Desteği** - Netflix ve Amazon Prime Video scraping
-**Film ve Dizi Destekli** - Her tür içerik için meta veri
-**Thumbnail Görselleri** - Otomatik afiş/poster görselleri çıkarır
-**Film/Dizi Açıklamaları** - İçerik özet bilgilerini (info) çıkarır
-**Tür Bilgisi** - Türkçe ve İngilizce tür normalizasyonu
-**Türkçe Arayüz Temizleme** - "izlemenizi bekliyor" gibi metinleri temizler
-**JSON-LD Tabanlı** - Netflix'in yapısal verilerini kullanır
-**JSON-LD Tabanlı** - Platformların yapısal verilerini kullanır
-**Hızlı ve Güvenilir** - Statik HTML scraping + Playwright fallback
-**Node.js 18+ Uyumlu** - Modern JavaScript özellikleri
-**Türkiye Odaklı** - Netflix Türkiye URL'leri optimize edilmiş
-**Türkiye Odaklı** - Netflix Türkiye ve Prime Video URL'leri optimize edilmiş
## 🔧 API
@@ -75,7 +104,35 @@ Netflix URL'sinden meta veri çeker. URL normalizasyonu otomatik olarak yapılı
id: string, // Netflix ID
name: string, // İçerik adı
year: string | number, // Yılı
seasons: string | null // Sezon bilgisi (diziler için)
seasons: string | null, // Sezon bilgisi (diziler için)
thumbnail: string | null, // Afiş/poster görseli URL'si
info: string | null, // Film/dizi açıklaması
genre: string | null // Tür bilgisi (Türkçe)
}
```
### `scraperPrime(url, options)`
Amazon Prime Video URL'sinden meta veri çeker. URL normalizasyonu otomatik olarak yapılır.
**Parametreler:**
- `url` (string): Amazon Prime Video URL'i
- `options` (object, isteğe bağlı):
- `headless` (boolean): Headless mode (default: false)
- `timeoutMs` (number): Timeout süresi (default: 15000)
- `userAgent` (string): Özel User-Agent
**Dönen Veri:**
```typescript
{
url: string, // Temizlenmiş URL
id: string, // Prime Video ID
name: string, // İçerik adı
year: string | number, // Yılı
seasons: string | null, // Sezon bilgisi (diziler için, filmler için null)
thumbnail: string | null, // Afiş/poster görseli URL'si
info: string | null, // Film/dizi açıklaması
genre: string | null // Tür bilgisi (Türkçe normalize edilmiş)
}
```