Парсинг корректного числа с сайта

1.Пишу парсер, не могу понять почему при печати словаря из переменной 'price' на экран выводит некорректный текст, когда при печати 'price' отдельно, выводит цену корректно?

2.введите сюда описание изображенияЧто нужно использовать чтобы убрать пробелы в цене и отсечь денежный знак? Пробовал отсечь с помощью:

for pric in price:
     print(str(pric).replace(' ', ''))
  • печатает цену столбиком.

введите сюда описание изображения

введите сюда описание изображения введите сюда описание изображения


Ответы (2 шт):

Автор решения: Эникейщик

Вот это вот

for pric in price:
     print(str(pric).replace(' ', ''))

делает следующее: берет по одному символу из строки price и печатает этот символ на новой строчке. Или просто новую строку, если символ был абзац. Кстати, str() тут совсем не требуется, потому что pric и так уже строка.

Нужно просто удалить пробелы в самой исходной строке:

p = price.replace(" ","")
print(p)
→ Ссылка
Автор решения: CrazyElf

Неразрывные пробелы 0xa0 как и обычные пробелы можно удалить из строки таким образом:

s = '123\xa0456'
print(''.join(map(str.strip, s)))
# 123456

Вам нужно очистить price таким образом. Символ рубля можете перед этим заменить на пустой символ через .replace.

→ Ссылка