Ekşi Sözlük Scraper - AI-friendly output üreten terminal tabanlı scraper
Project description
eksisozluk-scraper
Terminal tabanlı Ekşi Sözlük scraper'ı. Çıktısı AI-friendly formatlarda: JSON (varsayılan), CSV ve Markdown.
Cursor (yapay zeka) ile yazılmıştır.
Özellikler
- ✅ Terminal tabanlı CLI arayüzü
- ✅ Tab completion desteği (bash/zsh/fish)
- ✅ Çoklu çıktı formatı desteği (JSON, CSV, Markdown)
- ✅ Format otomatik tespiti (dosya uzantısından)
- ✅ Başlık bazlı tüm entry scraping
- ✅ Zaman aralığına göre filtreleme (gün/hafta/ay/yıl)
- ✅ Spesifik entry'den itibaren scraping
- ✅ Rate limiting
- ✅ Hata durumunda otomatik retry mekanizması
Kurulum
Pip ile Kurulum (Önerilen)
PyPI'den kurulum:
pip install eksisozluk-scraper
Python paketi olarak kurulum yapmak için:
# GitHub'dan direkt kurulum
pip install git+https://github.com/erenseymen/eksisozluk-scraper.git
Diğer Paket Formatları
Alternatif metod: Python Script Olarak Çalıştırma
Python scriptini doğrudan çalıştırabilirsiniz:
# Repoyu klonla
git clone https://github.com/erenseymen/eksisozluk-scraper.git
cd eksisozluk-scraper
# Bağımlılıkları kur
pip3 install -r requirements.txt
# Scripti çalıştır
python3 eksisozluk_scraper.py "başlık adı"
Kullanım
Temel Kullanım
# Başlıktaki tüm entry'leri scrape et
eksisozluk-scraper "başlık adı"
Zaman Filtreleme
# Son 1 günlük entry'ler
eksisozluk-scraper "başlık adı" --days 1
# Son 2 haftalık entry'ler
eksisozluk-scraper "başlık adı" --weeks 2
# Son 1 aylık entry'ler
eksisozluk-scraper "başlık adı" --months 1
# Son 1 yıllık entry'ler
eksisozluk-scraper "başlık adı" --years 1
Maksimum Entry Sayısı
# Maksimum 100 entry scrape et
eksisozluk-scraper "başlık adı" --max-entries 100
Belirli Entry'den İtibaren Scrape Etme
eksisozluk-scraper "https://eksisozluk.com/entry/entry-id"
Çıktıyı Dosyaya Kaydetme
Scraper, çıktı formatını dosya uzantısından otomatik olarak tespit eder:
# JSON formatı (varsayılan)
eksisozluk-scraper "başlık adı" --output sonuclar.json
# CSV formatı
eksisozluk-scraper "başlık adı" --output sonuclar.csv
# Markdown formatı
eksisozluk-scraper "başlık adı" --output sonuclar.md
# veya
eksisozluk-scraper "başlık adı" --output sonuclar.markdown
Gelişmiş Parametreler
# Request'ler arası bekleme süresi (varsayılan: 1.5 saniye)
eksisozluk-scraper "başlık adı" --delay 2.0
# Maksimum retry sayısı (varsayılan: 3)
eksisozluk-scraper "başlık adı" --max-retries 5
# Retry arası bekleme (varsayılan: 5.0 saniye)
eksisozluk-scraper "başlık adı" --retry-delay 10.0
# Referans edilen entry'leri fetch etme (varsayılan: True)
eksisozluk-scraper "başlık adı" --no-bkz
Notlar
- Scraper, Ekşi Sözlük'e aşırı yük bindirmemek için her request arasında varsayılan 1.5 saniye bekler.
- Hata durumlarında otomatik olarak belirli aralıklarla tekrar dener.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eksisozluk_scraper-1.1.0.tar.gz.
File metadata
- Download URL: eksisozluk_scraper-1.1.0.tar.gz
- Upload date:
- Size: 21.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0453c599d4e396b48a01c2c177bfce311c429d849b021b25cff94972210fc451
|
|
| MD5 |
a112b9cdf50dfc5f34c4a60597c40856
|
|
| BLAKE2b-256 |
f2bbcd668da912a286cd2f8b5fa7b45f913f2e8eae97f82c11cbec8e22f1f6d6
|
File details
Details for the file eksisozluk_scraper-1.1.0-py3-none-any.whl.
File metadata
- Download URL: eksisozluk_scraper-1.1.0-py3-none-any.whl
- Upload date:
- Size: 18.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9ca49f23f54e0c5da46cd1b4a4b6388bd12ed721721b23cd8bed3030eecbd97
|
|
| MD5 |
667218f2c7e933e0ea905decea3e0891
|
|
| BLAKE2b-256 |
12dd0d1849dfdfc78bcc779717964f9e764ac03449c978e75102ae68ea8153da
|