| | import bs4 |
| | from PIL import Image |
| | from selenium.webdriver.chrome.service import Service |
| | from selenium import webdriver |
| | import requests |
| | import os |
| | import time |
| |
|
| |
|
| | PATH = r"C:\Users\anujg\Downloads\Programs\chromedriver_win32\chromedriver.exe" |
| | service = Service(PATH) |
| | options = webdriver.ChromeOptions() |
| |
|
| | options.add_argument('--no-sandbox') |
| | options.add_argument('--headless') |
| | options.add_argument('--disable-gpu') |
| | options.add_argument('--disable-dev-shm-usage') |
| | options.add_argument("--window-size=1920,10800") |
| | |
| |
|
| | driver = webdriver.Chrome(service=service, options=options) |
| | |
| | |
| |
|
| | def dloadimg(url, name): |
| | |
| | reponse = requests.get(url) |
| | if reponse.status_code==200: |
| | with open(os.path.join('resized',name+".jpg"), 'wb') as file: |
| | |
| | file.write(reponse.content) |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | def section_length(driver): |
| | fig_xpath = '//*[@id="main"]/div[3]/div/div[2]/section/figure' |
| | figures = driver.find_elements(by="xpath", value=fig_xpath) |
| | return len(figures) |
| |
|
| | def dload(urlW,name,pc): |
| | driver.get(urlW) |
| | num_img = section_length(driver) |
| | print(num_img) |
| | for i in range(1, num_img+1): |
| | ImageXPath = """//*[@id="main"]/div[3]/div/div[2]/section/figure[%s]/div/a/img"""%(i) |
| | |
| | |
| | timeStarted = time.time() |
| | while True: |
| | try: |
| | ImageElement = driver.find_element(by="xpath", value=ImageXPath) |
| | ImageURL = ImageElement.get_attribute("src") |
| | |
| | if ImageURL == "https://freepik.cdnpk.net/img/1px.png": |
| | currentTime = time.time() |
| | if currentTime - timeStarted > 10: |
| | print("Timeout! moving to next image") |
| | break |
| | elif ImageURL != "https://freepik.cdnpk.net/img/1px.png": |
| | dloadimg(ImageURL, name+"_pg_no."+str(pc)+"img"+str(i)) |
| | print("Downloaded image no. %s of page no. %s." %(i,pc)) |
| | break |
| | else: |
| | break |
| | except: |
| | print("Couldn't download an image %s, continuing downloading the next one"%(i)) |
| | break |
| | |
| | pgcnt = 1 |
| | while pgcnt<23: |
| | urlW = "https://www.freepik.com/photos/ai-generated/%s"%(pgcnt) |
| | dload(urlW,"AI_Img",pgcnt) |
| | pgcnt = pgcnt + 1 |
| | |
| |
|
| |
|
| |
|
| | driver.close() |