60 lines
1.8 KiB
Python
60 lines
1.8 KiB
Python
"""
|
||
Тест посещения сайтов проверки fingerprint браузера.
|
||
Запуск: python test_fingerprint.py
|
||
"""
|
||
|
||
import asyncio
|
||
import sys
|
||
from pathlib import Path
|
||
|
||
sys.path.insert(0, str(Path(__file__).parent))
|
||
|
||
from services.browser_service import BrowserService, _patch_camoufox
|
||
from managers.proxy_manager import ProxyManager
|
||
|
||
_patch_camoufox()
|
||
|
||
URLS = [
|
||
"https://browserleaks.com/",
|
||
"https://www.browserscan.net/",
|
||
"https://abrahamjuliot.github.io/creepjs/",
|
||
]
|
||
|
||
READING_TIME = 15 # секунд на каждой странице
|
||
|
||
|
||
async def main():
|
||
proxy_manager = ProxyManager()
|
||
await proxy_manager.detect_types()
|
||
|
||
browser_service = BrowserService(proxy_manager)
|
||
|
||
print(f"\nПрокси доступно: {proxy_manager.count}")
|
||
print(f"Посещаем {len(URLS)} сайтов по {READING_TIME}с каждый\n")
|
||
print("=" * 60)
|
||
|
||
for url in URLS:
|
||
print(f"\n🌐 {url}")
|
||
result = await browser_service.visit_page(url, reading_time=READING_TIME)
|
||
|
||
if result.success:
|
||
print(f" ✅ Успех")
|
||
print(f" 📍 Итоговый URL: {result.final_url}")
|
||
if result.redirect_occurred:
|
||
print(f" 🔀 Был редирект: {result.initial_url} → {result.final_url}")
|
||
print(f" 🔌 Прокси: {result.proxy_info}")
|
||
print(f" ⏱ Время чтения: {result.reading_time}с")
|
||
if result.screenshot_path:
|
||
print(f" 📸 Скриншот: {result.screenshot_path}")
|
||
else:
|
||
print(f" ❌ Ошибка: {result.error}")
|
||
|
||
print("\n" + "=" * 60)
|
||
print("Готово. Проверь скриншоты в папке screenshots/")
|
||
|
||
await browser_service.cleanup()
|
||
|
||
|
||
if __name__ == "__main__":
|
||
asyncio.run(main())
|