52 lines
1.5 KiB
Python
52 lines
1.5 KiB
Python
import requests
|
|
import time
|
|
import json
|
|
|
|
BASE_URL = "http://localhost:8000"
|
|
DOWNLOAD_URL = "https://coomer.st/onlyfans/user/miachan"
|
|
|
|
def run_test():
|
|
# Start Download
|
|
print(f"Starting download for {DOWNLOAD_URL}...")
|
|
payload = {
|
|
"url": DOWNLOAD_URL,
|
|
"download_images": True,
|
|
"download_videos": False, # Just images for speed
|
|
"max_workers": 1
|
|
}
|
|
try:
|
|
resp = requests.post(f"{BASE_URL}/downloader/start", json=payload)
|
|
resp.raise_for_status()
|
|
print("Download started.")
|
|
except Exception as e:
|
|
print(f"Error starting download: {e}")
|
|
return
|
|
|
|
# Poll logs for a bit
|
|
print("Polling logs for file path info...")
|
|
for _ in range(30): # Poll for 30 seconds
|
|
try:
|
|
logs_resp = requests.get(f"{BASE_URL}/downloader/logs")
|
|
logs = logs_resp.json()
|
|
|
|
# Print new logs (naive way, just printing last few)
|
|
if logs:
|
|
print("\n--- Recent Logs ---")
|
|
for log in logs[-5:]:
|
|
print(log)
|
|
if "Starting download from" in log:
|
|
print("\n[FOUND PATH LOG]:", log)
|
|
# We are looking for "Starting download from ... to ..."
|
|
|
|
time.sleep(2)
|
|
except Exception as e:
|
|
print(f"Error polling logs: {e}")
|
|
break
|
|
|
|
# Cancel download to not spam
|
|
print("\nCancelling download...")
|
|
requests.post(f"{BASE_URL}/downloader/cancel")
|
|
|
|
if __name__ == "__main__":
|
|
run_test()
|