Переименование файла, загруженного с помощью запросов Python

Как я могу заменить имя файла pdf , загружаемого с помощью запросов Python?

Я хочу сохранить его как Manual_name1.pdf не как Elkinson%20Jeffrey.pdf

Файл CSV выглядит так:

 Manual_name1 https://www.adndrc.org/diymodule/doc_panellist/Elkinson%20Jeffrey.pdf Manual_name2 http://www.parliament.bm/uploadedFiles/Content/House_Business/Presentation_of_Papers_and_of_Reports/PCA%20Report%209262014.pdf manual_name3 http://www.ohchr.org/Documents/HRBodies/OPCAT/elections2016/HaimoudRamdan.pdf 

Мой текущий код:

 import os import csv import requests write_path = 'C:\\Users\\hgdht\\Desktop\\Downloader_Automation' # ASSUMING THAT FOLDER EXISTS! with open('Links.csv', 'r') as csvfile: spamreader = csv.reader(csvfile) for link in spamreader: if not link: continue print('-'*72) pdf_file = link[0].split('/')[-1] with open(os.path.join(write_path, pdf_file), 'wb') as pdf: try: # Try to request PDF from URL print('TRYING {}...'.format(link[0])) a = requests.get(link[0], stream=True) for block in a.iter_content(512): if not block: break pdf.write(block) print('OK.') except requests.exceptions.RequestException as e: # This will catch ONLY Requests exceptions print('REQUESTS ERROR:') print(e) # This should tell you more details about the error 

One Solution collect form web for “Переименование файла, загруженного с помощью запросов Python”

Вместо

 pdf_file = link[0].split('/')[-1] 

используйте конкретный столбец из файла csv:

 pdf_file = link[1] # (assuming the file name is in the second column) 

Если имя файла находится в первом столбце, вы должны использовать

 pdf_file = link[0] # (assuming the file name is in the first column) # OR import time # put this in the beginning of your script pdf_file = '{}-{}.pdf'.format(link[0], int(time.time())) # file name will look like: "name-1495460691.pdf" 

но тогда вам придется изменить ссылку на саму ссылку при вызове с запросами:

 a = requests.get(link[1], stream=True) # (assuming the link is in the second column) 
  • Python: путаницы с urljoin
  • Какова цель в itertools.repeat Python?
  • TypeError: Отсутствует 1 обязательный позиционный аргумент: 'self'
  • Использование нескольких Python-движков (32Bit / 64bit и 2.7 / 3.5)
  • Две переменные в Python имеют одинаковый идентификатор, но не списки или кортежи
  • Python: словарь как переменная экземпляра
  • Косинус сходства между 2-мя списками
  • установка IPython с двумя версиями Python (Windows)
  • Python - лучший язык программирования в мире.