Как из спарсенной страницы записать данные в словарь

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
Спарсилась страница с сайта.
В переменной находится и HTML и JavaScript данные.

Код:
import requests # модуль для парсинга
from bs4 import BeautifulSoup #модуль для парсинга

s = requests.Session()
loging = s.get(URL, headers=HEADERS, params=None)
soup = BeautifulSoup(loging.content, 'html.parser')




Как эту часть спарсенной страницы записать в словарь? По виду эта часть данных - словарь. Но записать в реальный словарь ,что бы получить данные по ключу не получается.
Код:
{"response":{"cheap":"0",
                   "expensive":"0",
                   "items":[
                             {"productIndex":"0",
                             "sku":"KA90IVI20R","type":"shop","title":"Холодильник Side by Side","isInComparison":false,"comparable":true,"productsInComparisonSize":0,
                              "sku":"KA90IVI20R","type":"shop","title":"Холодильник Side by Side","isInComparison":"false","comparable":"true","productsInComparisonSize":"0",
                              "headers":["iQ500","Холодильник Side by Side","","177 x 91 cm","Inox-easyclean","KA90IVI20R"],
                              "price":{"value":164990.0,"displayValue":"164 990,00 ₽"},"stockStatus":{"trafficLight":"green","text":"[G11]","buyable":"true","permanentlyNotAvailable":"false"},
                              "link":"/fater/outlet/KA90IVI20R?breadcrumb=",
                              "productImage":{"src":"//media3.123.com/Product_Shots/{width}x{height}/MCSA00762608_E6797_KA90IVI20G_407519_def.jpg","alt":"KA90IVI20R"},
                              "hookline":"Холодильник coolDuo серии iQ 500 типа \"side-by-side\" с технологией NoFrost, дополнительно оснащен дозатором для воды и льда.",
                              "keyBenefits":["Многопоточная система охлаждения multiAirflow обеспечивает равномерное распределение воздуха и охлаждение на всех уровнях холодильника.","Технология noFrost защищает от образования инея и избавит вас от необходимости размораживать холодильник.","Холодильник шириной 70см - существенное увеличение полезного объема для хранения продуктов.","Функция superFreezing понижает температуру на заданный промежуток времени, чтобы быстрее заморозить только что добавленные продукты.","Функция superCooling, или 'суперохлаждение', уменьшает температуру на заданное время,"]
                             }]
                   }
       }
 
Последнее редактирование:

borntohack

змееуст
Команда форума
Модератор
Апр 22, 2020
78
62
18
39
Москва, РФ
json.loads
 
  • Мне нравится
Реакции: Fortron

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
Можно ,пожалуйста, показать как это будет в скрипте выглядеть?
 

root

Пользователь
Пользователь
Апр 29, 2020
60
14
8
Москва
Можно ,пожалуйста, показать как это будет в скрипте выглядеть?
Python:
import json

# soup та что у тебя
slovar = json.loads(soup)
 
  • Мне нравится
Реакции: Fortron

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
Вышла ошибка

Код:
TypeError: the JSON object must be str, bytes or bytearray, not BeautifulSoup

сам скрипт

Код:
import requests # модуль для парсинга
from bs4 import BeautifulSoup #модуль для парсинга
import json

s = requests.Session()
loging = s.get(URL, headers=HEADERS, params=None)
soup = BeautifulSoup(loging.content, 'html.parser')
json_dat = json.loads(soup)
 
Последнее редактирование:

Форум IT Специалистов