Как я могу очистить результат этого запроса?

Я работаю с веб-API ( film API ). Когда я делаю почтовый запрос, используя запросы к определенному URL, я получаю этот ответ:

<a href='"https://xdede.co/peliculas/p284052-ver-doctor-strange-online"' up-target='"body"'>
						
<div class='"SPoster"'>
							
<img src='"https://image.tmdb.org/t/p/w45/7OpmunCEZo93nyRIbx59QRaFvZz.jpg"'/>
						&lt;/div&gt;
						
<h2>Doctor Strange&lt;/h2&gt;
						<span>Pelicula&lt;/span&gt;
					&lt;/a&gt;
				&lt;/div&gt;
				"}</span>
</h2></div></a>

Как я могу отфильтровать этот беспорядок, чтобы получить href и тег h2 ? Я пробовал beautifulsoup но ничего. Любой совет?

Всего 1 ответ


Использование BeautifulSoup и regex

import re

import bs4 as bs4

html = """<a href='"https://xdede.co/peliculas/p284052-ver-doctor-strange-online"' up-target='"body"'>
						<div class='"SPoster"'>
							<img src='"https://image.tmdb.org/t/p/w45/7OpmunCEZo93nyRIbx59QRaFvZz.jpg"'/>
						&lt;/div&gt;
						<h2>Doctor Strange&lt;/h2&gt;
						<span>Pelicula&lt;/span&gt;
					&lt;/a&gt;
				&lt;/div&gt;
				"}</span></h2></div></a>"""
soup = bs4.BeautifulSoup(html, features='html.parser')

href = re.sub(r'[\"]', '', soup.a['href'])
h2 = re.sub(r'<[^>]*>', '', soup.a.h2.text)
h2 = ' '.join(re.findall(r'(w+)', h2))

print(href)
print(h2)

Выход:

https://xdede.co/peliculas/p284052-ver-doctor-strange-online
Doctor Strange Pelicula

Есть идеи?

10000