Удалить тег <a>HTML из результатов Beautifulsoup - PullRequest
0 голосов
/ 24 мая 2018

Используя Beautifulsoup, я могу очистить веб-страницу с помощью этого кода:

import requests
from bs4 import BeautifulSoup

page = requests.get("http://www.acbbroker.it/soci_dettaglio.php?r=3")
page

soup = BeautifulSoup(page.content, 'html.parser')
test = soup.find(id="paginainterna-content")
test_items = test.find_all(class_="entry-content")
tonight = test_items[0]

names = []
for x in tonight.find_all('a', itemprop="url"):
    names.append(str(x))
print(names)

, но я не могу очистить результаты и получить только содержимое внутри абзаца (удалениетакже HREF).

Вот небольшой снимок моего результата:

 '<a href="http://www.google.com/maps/place/45.45249938964844,9.210599899291992" itemprop="url" target="_blank">A&amp;B; Insurance e Reinsurance Brokers Srl</a>', '<a href="http://www.google.com/maps/place/45.647499084472656,8.774800300598145" itemprop="url" target="_blank">A.B.A. BROKERS SRL</a>', '<a href="http://www.google.com/maps/place/45.46730041503906,9.148480415344238" itemprop="url" target="_blank">ABC SRL BROKER E CONSULENTI DI ASSI.NE</a>', '<a href="http://www.google.com/maps/place/45.47710037231445,9.269220352172852" itemprop="url" target="_blank">AEGIS INTERMEDIA SAS</a>',

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

Спасибо

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Я не знаю, какой вывод вы хотите, но текст, который вы получите, изменив это

names.append(str(x.get_text()))
0 голосов
/ 24 мая 2018

если вы хотите использовать только текст из тега, используйте get_text() метод

for x in tonight.find_all('a', itemprop="url"):
    names.append(x.get_text())                                                                                                                                                    
print(names)

лучше с list comprehension это быстрее

names = [x.get_text() for x in tonight.find_all('a', itemprop='url')]
...