Я не могу удалить номер телефона. Может кто-нибудь мне помочь
Вот содержание HTML этой части.
<p class="contact-info " onclick="_ct('clntphn', 'lspg');">
<i class="contactNo spriteImg"></i>
<span><a><b>+(91)-80-30805680</b></a></span>
</p>
Я попытался извлечь это с помощью:
soup.find('p',{'class':'contact-info'})
но тщетно. Он не может сделать то же самое.
3 ответа
Решение
Вы можете использовать find
метод с тегом:
from bs4 import BeautifulSoup as soup
s = soup(html_data, "lxml")
number = s.find('b').text
Выход:
u'+(91)-80-30805680'
Чтобы получить первый экземпляр, вы можете попробовать это:
new_s = s.findAll("p", {"class":"contact-info"})
new_data = [i.text for i in new_s]
print(new_data[0].replace("\n", ''))
Выход:
+(91)-80-30805680
Вы должны присоединиться, чтобы найти методы в цепочке:
soup.find('p',{'class':'contact-info'}).find('b').text
Я бы использовал селектор CSS. Поскольку вокруг него есть пробелы, мы можем легко его убрать.
soup.select_one('p.contact-info').get_text(strip=True)