Разбор текста json внутри тега скрипта с использованием BeautifulSoup - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь извлечь текст в элементе @context ('script', type='application/ld+json') в Python3 с помощью BeautifulSoup.

У меня есть несколько скриптов на одной странице, и я хотел бы получить конкретныефункции, перечисленные в json выше.

Я пытался использовать этот код:

data = soup.find_all('script', type='application/ld+json')
print(data)

Это дало мне законченное извлечение содержимого всех сценариев, но я хотел бы получить определенную функцию внутриконтекст каждого сценария.

Пример функции:

{"name":"test","telephone":"600.212.0000","url":"https://test.com/test"}

Для этого примера я хотел бы получить "url" part.

Кто-нибудь знает, что делатьэто на Python?

Большое спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 01 октября 2018

Вы можете использовать понимание списка с get():

data = soup.find_all('script', type='application/ld+json')

urls = [i.get('url') for i in data]
0 голосов
/ 01 октября 2018

Поскольку ваша функция - диктат, вы можете попробовать следующее:

feature = {"name":"test","telephone":"600.212.0000","url":"https://test.com/test"}
print(feature["url"])
...