The reason for Element not found exception could be because there is a timeout issue. The WbeDriver is getting timedout before your page loads completely. Try using implicit/ explicit wait statements to overcome this problem.
Add this line of code after the last line in the above code:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//*[@id='csv-button']"))).click()
Also remember to import this package:
from selenium.webdriver.support import expected_conditions as EC