#python #pandas #urllib #enumeration
#python #pandas #urllib #перечисление
Вопрос:
Я создал программу для получения изображений из URL-адресов в CSV-файле и хочу загрузить ее в локальную папку на Python, но программа показывает следующую ошибку
«Ошибка типа: невозможно использовать строковый шаблон для байтоподобного объекта»
Пожалуйста, проверьте приведенный ниже код
import pandas as pd
import urllib.request
def url_to_jpg(i, url , File_Path):
filename = 'image_{}.jpg'.format(i)
full_path = '{}{}'.format(File_Path, filename)
urllib.request.urlretrieve(url, full_path)
print('{} saved.'.format(filename))
return None
FileName = "C:/Users/IT City/Desktop/Kwiat-USA/KavantaCSV.csv"
File_Path = "C:/Users/IT City/Desktop/Kwiat-USA/images"
urls = pd.read_csv(FileName)
for i , url in enumerate(urls.values):
url_to_jpg(i, url , File_Path)
Нужна ваша немедленная помощь. Помощь будет высоко оценена.
Спасибо
Ответ №1:
Может быть, вам нужно его расшифровать? -или вы можете просто использовать библиотеку запросов.
r = requests.get(url)
f = open(filename, "wb ")
f.write(r.content)
f.close()
Ответ №2:
URL-адрес, передаваемый urlretrieve, представляет собой массив. urls.values дает 2d-массив.
всегда помогает, если также публикуется трассировка стека.
Комментарии:
1. Привет, Adithay, csv-файл содержит только один столбец с именем «URL», один столбец
2. возвращаемым типом всегда будет 2d-массив. независимо от данных. почему бы вам не распечатать переменную url в методе url_to_jpg и не проверить ее один раз.