Как работает JSON

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
Не могу разобраться как работает JSON

Где ошибка? Надо что бы спарсенная страница, которая содержит HTML и Java Script объекты,
записалась в файл.

похоже модуль не ставится

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

s = requests.Session()

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

items = soup.find_all('form', {"id":"command"})

f = open('json_data.txt','w', encoding='utf-8') # открывает файл для записи
json.dump(items, f)
f.close()
json ошибка.jpg
 
Последнее редактирование:

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Может просто как текст записать:
Python:
import requests # модуль для парсинга
from bs4 import BeautifulSoup #модуль для парсинга
import json

s = requests.Session()

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

items = soup.find_all('form', {"id":"command"})

with open('json_data.txt', 'w', encoding='utf-8') as f:
    for i in items:
        f.write(i)
 
  • Мне нравится
Реакции: Fortron

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
у меня похоже модуля json нет. Пока разбираюсь как его установить.

нужен pip 20.1 но при обновлении pip не обновляется.

Команда на обновление

Код:
pip install --upgrade pip

pip установка.jpg
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
json - это встроенный модуль, его не нужно устанавливать дополнительно.
 

Fortron

Новичок
Пользователь
Май 3, 2020
44
2
8
Скрипт записал в файл часть спарсенной страницы

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

s = requests.Session()

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

items = soup.find_all('form', {"id":"command"})

with open('json_data.txt', 'w', encoding='utf-8') as f:
    for i in items:
        f.write(str(i))
f.close()

Как теперь из файла вытащить в словарь все данные которые стоят после двоеточия?

Мне нужно что бы скрипт по ключу - "title" добавлял в словарь значение - "Холодильник Side by Side".
И так все значения по этому ключу добавил в словарь.

Вот часть данных в файле:
Код:
"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":98994.0,"displayValue":"98 994,00 ₽","originalValue":"164 990,00 ₽"},"stockStatus":{"trafficLight":"green","text":"[G11]","buyable":true},

в другом файле json записал в файл такие данные

Код:
"title\":\"\u0425\u043e\u043b\u043e\u0434\u0438\u043b\u044c\u043d\u0438\u043a Side by Side\"

В исходном коде они были такие :
Код:
"title":"Холодильник Side by Side"

Вопрос - что за набор из 5 символов которые разделены слешем,которые записываются в файл командой:
Код:
f = open('json_data.txt','w', encoding='utf-8') # открывает файл для записи
json.dump(str(items), f)
f.close()
 
Последнее редактирование:

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