Выскабливание питона - PullRequest
0 голосов
/ 01 декабря 2019

У меня есть 2 тега с различным содержимым внутри тега href, и я просто хочу один, который мне хотелось бы знать, возможно ли для BeautifulSoup выбрать только раздел href, начинающийся с определенного слова. Если я знаю, спасибо.

<a href="https://facebook.com/" </a> 

и другие

<a href="https://Instagram.com/" </a>

1 Ответ

0 голосов
/ 01 декабря 2019

Вот краткий пример для вас:

from bs4 import BeautifulSoup
import re


html = """
<a href="https://facebook.com/"> </a>
<a href="https://Instagram.com/"> </a>
"""

page = BeautifulSoup(html)

# Iterate over 'a' elements and search if starts with "https://Insta"
for i in page.findAll("a"):
    if i.get("href").startswith("https://Insta"):
        instagram = i

# One line and regex version:
facebook = [i for i in page.findAll("a") if re.match("^https://face", i.get("href"))][0]

print(facebook)
print(instagram)

Вывод:

<a href="https://facebook.com/"> </a>
<a href="https://Instagram.com/"> </a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...