Instagram password reset request sender with proxy support, thread isolation, and user-agent rotation (UNOFFICIAL)
Project description
cevreset
Instagram şifre sıfırlama (reset) isteği gönderen UNOFFICIAL araç.
UYARI UYARI UYARI
Bu paket Instagram'ın resmi API'sini kullanmaz.
Instagram ToS'ye aykırı olabilir → hesabınız banlanabilir.
Sadece eğitim, güvenlik araştırması, kendi hesabınızı test etme amacıyla kullanın.
Yazar hiçbir sorumluluk kabul etmez.
Kurulum
pip install cevreset
Yeni Özellikler (v0.3.0)
🎯 Resource Management
- Context Manager: Otomatik session cleanup
- Thread-Safe: Her thread kendi session'ı var
- Proper Cleanup: Tüm kaynaklar release ediliyor
🔄 Proxy Desteği
- Birden fazla proxy döngü halinde kullanma
- Her thread farklı proxy ile request gönderme
- Bloklanma riskini azaltma
🎭 User-Agent Çeşitlendirmesi
- 5+ farklı Android cihaz simulasyonu
- Random Device ID, App ID, Timezone
- Her request'te farklı başlık (headers)
🔐 Thread İzolasyonu
- Her thread ayrı session alır
- Her session farklı CSRF token
- Bağımsız User-Agent ve device info
📝 Logging
- Debug seviyesi loglama
- Thread bilgileri
- Hata detayları
Hızlı Kullanım
Basit Kullanım
from cevreset import InstagramResetClient
with InstagramResetClient(threads=6) as client:
result = client.send_reset_request("username")
print(result)
Proxy ile Kullanım
proxies = [
"http://proxy1:8080",
"http://proxy2:8080",
"http://proxy3:8080",
]
with InstagramResetClient(threads=6, proxies=proxies) as client:
result = client.send_reset_request("username", extract="contact_point")
print(result) # "user@example.com" veya None
Batch İşlem
targets = ["user1", "user2", "user3"]
with InstagramResetClient(threads=8, proxies=proxies) as client:
results = client.send_reset_requests(
targets=targets,
extract="contact_point",
delay_between=3.0
)
for username, email in results.items():
print(f"{username}: {email}")
Logging Etkinleştirme
import logging
logging.basicConfig(level=logging.DEBUG)
logging.getLogger("cevreset.client").setLevel(logging.DEBUG)
with InstagramResetClient(threads=6) as client:
client.send_reset_request("username")
API Reference
InstagramResetClient
Constructor
InstagramResetClient(
threads: int = 6, # Concurrent thread sayısı
timeout: int = 12, # Request timeout (saniye)
proxies: Optional[List[str]] = None, # Proxy listesi
use_random_agents: bool = True # User-Agent rotation
)
Methods
send_reset_request()
client.send_reset_request(
target: str, # username veya email
extract: Union[str, List[str], None] = None, # Field extraction
delay_before: float = 0 # Öncesinde bekleme
) -> Any
Extract parametresi:
None→ Tam JSON response"contact_point"→ Tek field["contact_point", "status"]→ Çoklu field"field1,field2,field3"→ Virgülle ayrılmış
send_reset_requests()
client.send_reset_requests(
targets: List[str], # Hedef listesi
extract: Union[str, List[str], None] = None,
delay_between: float = 5.0, # Hedefler arası bekleme
verbose: bool = True # Log yazdırma
) -> Dict[str, Any]
cleanup()
client.cleanup() # Tüm session'ları kapat (context manager otomatik yapar)
Mimarı
Thread Modeli
┌─────────────────────────────────────────┐
│ InstagramResetClient (Main) │
├─────────────────────────────────────────┤
│ ├─ Thread 1 → Session1 → CSRF1 → Header1 │
│ ├─ Thread 2 → Session2 → CSRF2 → Header2 │
│ ├─ Thread 3 → Session3 → CSRF3 → Header3 │
│ └─ Thread N → SessionN → CSFTN → HeaderN │
└─────────────────────────────────────────┘
↓
Instagram API
Şunların hepsi farklı:
- Session (cookies, state)
- CSRF Token (her session için ayrı)
- User-Agent (5+ variant)
- Device ID
- App ID
- Timezone
Resource Cleanup Flow
with InstagramResetClient(...) as client: # __enter__ çağrılır
client.send_reset_request(...) # İşlemler
# Blok sonunda
# __exit__ → cleanup() → sessions kapatılır
Detaylı Örnekler
example_advanced.py dosyasına bakın.
Performans İpuçları
- Thread Sayısı: 6-8 optimal (Instagram rate limiting)
- Timeout: 12-15 saniye (slow connection için 20+)
- Delay Between: 3-5 saniye (batch işlerde)
- Proxy: Yüksek kaliteli proxy kullanın
Hata Giderme
"CSRF token alınamadı"
- İnternet bağlantısını kontrol edin
- Proxy'lerin çalıştığını kontrol edin
- Instagram'ın erişilebilir olduğunu kontrol edin
"Tüm requestler başarısız"
- Instagram sizi bloklamış olabilir
- Proxy'leri değiştirin
- Delay'ı artırın
Loglama
import logging
logging.basicConfig(level=logging.DEBUG)
Changelog
v0.3.0 (Yeni)
- ✅ Context Manager desteği
- ✅ Proxy desteği (rotating)
- ✅ Thread başına ayrı session+CSRF
- ✅ User-Agent rotation
- ✅ Header çeşitlendirmesi
- ✅ Logging sistemi
- ✅ Error handling iyileştirmesi
v0.2.1
- İlk stabil release
License
MIT
Project details
Release history Release notifications | RSS feed
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 cevreset-0.4.0.tar.gz.
File metadata
- Download URL: cevreset-0.4.0.tar.gz
- Upload date:
- Size: 60.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.1 CPython/3.12.1 Linux/6.8.0-1030-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f324d273965791bfc4802d0ba3b2a495f7c8dcdacd6ae41d318e93211e326242
|
|
| MD5 |
8381d2b8814fbe9ac10caec391dd8710
|
|
| BLAKE2b-256 |
82e138a02d41cfe022cfdd62c898390c7dd8e8f6873918d115fc4bdacd0baf2e
|
File details
Details for the file cevreset-0.4.0-py3-none-any.whl.
File metadata
- Download URL: cevreset-0.4.0-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.1 CPython/3.12.1 Linux/6.8.0-1030-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
845174bb7ea72745a9a62b8bcee77179c6ae1afbd77b95a5a48dbf06ea717b69
|
|
| MD5 |
38482c0f14f3efbd6960aac12c9e45f1
|
|
| BLAKE2b-256 |
f5e2af7e33eaaff89ad2484c66d24fc9a21a432f20c550834d01cd44249b4b71
|