Уведомления

Группа в Telegram: @pythonsu

#1 Июль 28, 2015 03:56:42

backdoor
От: Екатеринбург
Зарегистрирован: 2015-07-28
Сообщения: 9
Репутация: +  0  -
Профиль   Адрес электронной почты  

int + str

Добрый день.
Имеется следующий код, ругается на сложение строки и целого числа.

file_name = 1
for line in findall:
    url2 = request.urlretrieve(line.replace('\\', '').replace('\'', '').replace('[', '').replace(']', '').replace(', ', '\n'), file_name+".jpg")
file_name += 1

Как можно по другому сделать данную конструкцию? или как можно сделать чтобы он сохранял с исходными именами, которыми скачивает.



«Шо-то сделали мы сложное, хотя задача-то была вменяемая!»

Отредактировано backdoor (Июль 28, 2015 03:57:36)

Офлайн

#2 Июль 28, 2015 04:32:59

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

int + str

Питон язык со строгой динамической типизации, в отличии от например JavaScript. Поэтому нельзя скдаывать объекты друг с другом, если у них не определено такое поведение. У стандартых питоновских строк и чисел такая возможность предусмотрительно отсутствует. Поэтому число нужно перевести в строку

str(file_name)+".jpg"
"{}.jpg".format(file_name)



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Июль 28, 2015 06:08:48

backdoor
От: Екатеринбург
Зарегистрирован: 2015-07-28
Сообщения: 9
Репутация: +  0  -
Профиль   Адрес электронной почты  

int + str

Спасибо. работает но теперь вот такая ошибка.
Скрин прикрепил ниже,и кусок моего говнокода.



«Шо-то сделали мы сложное, хотя задача-то была вменяемая!»

Отредактировано backdoor (Июль 28, 2015 07:10:08)

Прикреплённый файлы:
attachment Снимок.png (293,8 KБ)

Офлайн

#4 Июль 28, 2015 06:18:35

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

int + str

Что у вас в итоге получается в этих скобках url2 = request.urlretrieve(….)
?



Офлайн

#5 Июль 28, 2015 07:09:53

backdoor
От: Екатеринбург
Зарегистрирован: 2015-07-28
Сообщения: 9
Репутация: +  0  -
Профиль   Адрес электронной почты  

int + str

Нашел косяк.



«Шо-то сделали мы сложное, хотя задача-то была вменяемая!»

Офлайн

#6 Июль 28, 2015 07:15:21

backdoor
От: Екатеринбург
Зарегистрирован: 2015-07-28
Сообщения: 9
Репутация: +  0  -
Профиль   Адрес электронной почты  

int + str

FishHook
Что у вас в итоге получается в этих скобках url2 = request.urlretrieve(….)?
Там ссылка простая в итоге получается. Косяк нашел.

findall = str(re.findall(search, url))
for line in findall:
    ss = request.urlretrieve(line.replace('\\', '').replace('\'', '').replace('[', '').replace(']', '').replace(', ', '\n'), "{}.jpg".format(file_name))
    file_name +=1
Косяк оказался в первой строке,забыл убрать конвертацию.



«Шо-то сделали мы сложное, хотя задача-то была вменяемая!»

Офлайн

#7 Июль 28, 2015 10:50:21

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

int + str

backdoor
ss = request.urlretrieve(line.replace('\\', '').replace('\'', '').replace('[', '').replace(']', '').replace(', ', '\n'), "{}.jpg".format(file_name))
url = re.sub(r'''[][\']|, ''', '', line)
ss = request.urlretrieve(url, "{}.jpg".format(file_name))



Отредактировано py.user.next (Июль 28, 2015 10:53:28)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version