Here's my code :
from selenium import webdriver
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
import time
import shutil
PATH = "driver\chromedriver.exe"
driver = webdriver.Chrome(executable_path=PATH)
url = 'https://www.mergermarket.com/homepage'
driver.get(url)
deals = WebDriverWait(driver, 40).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="header"]/div/div[2]/nav/ul/li[4]/a')))
urldeals = deals.get_attribute("href")
driver.get(urldeals)
start_date = datetime.date(2021, 2, 1)
start_date = datetime.datetime.strftime(start_date, '%d/%m/%Y')
middle_date = datetime.date(2021, 2,15)
middle_date = datetime.datetime.strftime(middle_date, '%d/%m/%Y')
delta = datetime.timedelta(days=15)
n = 1
m = 3
while n <= m:
# Source path
source = f"sourcepath/{n}new.xlsx"
# Destination path
destination = f"destinationpath/{n}new.xlsx"
driver.get(urldeals)
date = WebDriverWait(driver, 40).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="date-picker_from"]')))
date.click()
date.send_keys(start_date)
time.sleep(1)
date2 = WebDriverWait(driver, 40).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="date-picker_to"]')))
date2.click()
date2.send_keys(Keys.CONTROL + "a")
date2.send_keys(Keys.DELETE)
date2.send_keys(middle_date)
download = WebDriverWait(driver, 40).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="__next"]/div/div/div[1]/div/div[2]/div[1]/div/div/div[2]/button[1]')))
download.click()
time.sleep(3)
start_date = datetime.datetime.strptime(start_date, '%d/%m/%Y')
middle_date = datetime.datetime.strptime(middle_date, '%d/%m/%Y')
start_date = start_date + delta
middle_date = middle_date + delta
start_date = datetime.datetime.strftime(start_date, '%d/%m/%Y')
middle_date = datetime.datetime.strftime(middle_date, '%d/%m/%Y')
Initial_path = 'path/Downloads'
filename = max([os.path.join(Initial_path, f) for f in os.listdir(Initial_path)], key=os.path.getctime)
shutil.move(filename,os.path.join(Initial_path,f"{n}new.xlsx"))
shutil.copy(source, destination)
print("File copied successfully.")
n = n+1
time.sleep(1)
And here's my output, before the script was lauched the folder was empty :
How to concatenate those file into one ? They have the same variables so it must be not that hard but I cannot figure it out how to do that. It would be awesome if someone could give me some tips.