#python #python-3.x #pandas #web-scraping #jupyter-notebook
#python #python-3.x #pandas #очистка веб-страниц #jupyter-ноутбук
Вопрос:
Всем добрый вечер:
Итак, я просматриваю сайт индийского обувного магазина и получаю все 151 ссылку на изображение, но когда я иду их загружать, я получаю только 51 без ошибок. вот мой код и вывод
import pandas as pd
import requests
import time
Bata = pd.read_csv("Batav1.csv")
Brand = Bata["Brand"].tolist()
Title = Bata["Title"].tolist()
Images = Bata["Img Links"].tolist()
r = requests.Session()
for b,t,i in zip(Brand,Title,Images):
s = r.get(i).content
with open("BataPics//Test//" f"{t}-{b}.jpg","wb") as f:
f.write(s)
time.sleep(1)
Ссылка на файл CSV: (Google Диск)
Комментарии:
1. внедрите счетчик в цикл for, чтобы проверить, действительно ли он выполняется 151 раз. Я предполагаю, что вы получаете только 51 результат из
zip(Brand,Title,Images)
Ответ №1:
Существуют повторяющиеся комбинации первых двух столбцов CSV-файла. Это приводит к тому, что ваш код генерирует повторяющиеся имена файлов. По сути, вы перезаписываете ранее загруженные файлы.
На самом деле должно быть 57 файлов, а не 51.
Ответ №2:
Итак, я решил это, поскольку перезаписывал файлы с одинаковыми именами, поэтому я извлек уникальный код из URL-адресов изображений и получил все 151 изображение 🙂