jefryjeyjonson
@jefryjeyjonson
Юный программист

Как исправить ошибку TypeError: bad operand type for unary +: 'str'?

import requests, bs4
from datetime import datetime

now = (datetime.now())
	
r = datetime.strftime(datetime.now(), "%Y-%m-%d") # получаем текущую дату в виде спсиска



url = ('https://sinoptik.com.ru/погода-горловка#',+ r)




print(url)



for r in s:
	s=requests.get(url)

	b=bs4.BeautifulSoup(s.text, "html.parser")

	p3=b.select('.temperature .p3')
	pogoda1=p3[0].getText()

	p4=b.select('.temperature .p4')
	pogoda2=p4[0].getText()

	p5=b.select('.temperature .p5')
	pogoda3=p5[0].getText()

	p6=b.select('.temperature .p6')
	pogoda4=p6[0].getText()

	print('Утром :' + pogoda1 + ' ' + pogoda2)
	print('Днём :' + pogoda3 + ' ' + pogoda4)

	p=b.select('.rSide .description')
	pogoda=p[0].getText()

	print(pogoda.strip())


а вот ошибка:

Traceback (most recent call last):
File "weather.py", line 19, in
url = ('https://sinoptik.com.ru/погода-горловка#',+ r)
TypeError: bad operand type for unary +: 'str'

***Repl Closed***

какой тип мне нужно сделать строке r , но , чтоб в дальнейшем я мог менять в ней последний элемент
  • Вопрос задан
  • 206 просмотров
Решения вопроса 1
TheDeadOne
@TheDeadOne
Седой и строгий
Запятую перед плюсом убрать. Впрочем, можно убрать всю последовательность символов #', + r, так как часть url после символа # всё равно в запросах не передаётся.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Konstantin18ko
@Konstantin18ko
Стоматолог
Запятую уберите в этой строке, которая идёт после URL.
Вот так:
url = ('https://sinoptik.com.ru/погода-горловка#' + r)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Popmechanic Москва
от 100 000 до 150 000 руб.
Panda Media Нижний Новгород
от 70 000 руб.
НЛ Континент Новосибирск
от 60 000 до 100 000 руб.
14 авг. 2018, в 16:33
1000 руб./за проект
14 авг. 2018, в 16:15
6000 руб./за проект
14 авг. 2018, в 16:12
500 руб./за проект