Scraping DDG dengan python

from duckduckgo_search import DDGS
from pathlib import Path
from fastprogress.fastprogress import progress_bar
import requests
import uuid
from PIL import Image as PImage

root = Path().cwd()/"jilbabcantik"  #isikan nama folder
keywords = 'jilbab cantik'          #isikan kata kunci
max_results=20

links=[]
with DDGS(proxies="socks5://localhost:9150", timeout=20) as ddgs:
    ddgs_images_gen = ddgs.images(
      keywords,
      safesearch="off",
    )
    for r in ddgs_images_gen:    
        #print(r["image"])
        links.append(r["image"])
        if len(links) >= max_results:
            break


if(len(links) == 0):
    print("Tidak ada yang bisa diunduh!");

uuid_names=True
path = Path(root)
path.mkdir(parents=True, exist_ok=True)

print("Mengunduh hasil ke dalam", path)
pbar = progress_bar(links)
pbar.comment = 'Gambar yang diunduh'

i = 1
mk_uniq = lambda : '_' + str(uuid.uuid4())[:8] if uuid_names else ''
mk_fp = lambda x: path/(str(x).zfill(3) + mk_uniq() + ".jpg")
is_file = lambda x: len(list(path.glob(str(x).zfill(3) + '*.jpg'))) > 0

while is_file(i): i += 1 

results = []

for link in pbar:
      try:
        resp = requests.get(link)
        fp = mk_fp(i)
        fp.write_bytes(resp.content)

        try:
          img = PImage.open(fp)
          img.verify()
          img.close()
          results.append(Path(fp))
        except Exception as e:
          print(e)
          print(fp, " tidak valid")
          fp.unlink()
      except Exception as e:
         print(e)
         print("Terjadi pengecualian saat mengambil ", link)

      i += 1