Json, проберись в веб-страницу - python - PullRequest
0 голосов
/ 04 июля 2018

Я перебираю определенную веб-страницу, используя запросы и библиотеки Beautifulsoup в Python

, поэтому в этом простом коде я получил нужный элемент

<script>
data = {'user':{'id':1,'name':'joe','age':18,'email':'joe@hotmail.com'}}
</script>

, поэтому я хочу получить значение электронной почты в переменной но весь элемент возвращается в список, и когда я указываю текст этого тега я не могу получить его в JSON, это дает мне ошибки в столбцах так есть идеи? я буду признателен за любую помощь

1 Ответ

0 голосов
/ 04 июля 2018

Что-то простое, может быть, поможет вам.

import json
from bs4 import BeautifulSoup

html = """
<script>
data = {'user':{'id':1,'name':'joe','age':18,'email':'joe@hotmail.com'}}
</script>
"""

soup = BeautifulSoup(html, 'html.parser')
# slices [7:] mean that we ignore the `data = `
# and replace the single quotes to double quotes for json.loads()
json_data = json.loads(soup.find('script').text.strip()[7:].replace("'", '"'))
print(json_data)
print(type(json_data))

выход

{'user': {'id': 1, 'name': 'joe', 'age': 18, 'email': 'joe@hotmail.com'}}
<class 'dict'>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...