Задать вопрос

Как спарсить заголовок из title?

import requests
from bs4 import BeautifulSoup
from lxml import etree as et

url= "https://liquipedia.net/counterstrike/Player_Transfers/3rd_Quarter_2023"

r = requests.get(url=url)
soup = BeautifulSoup(r.text, "lxml")

all_old_teams = soup.find_all("div", class_="divCell Team OldTeam")
for old in all_old_teams:
    team = old.find("a")
    print(team)


Получаю:
64f4a0e3834d1796879876.png
....

Нужно получить текст из заголовка title.
т.е:

ODDIK
mocreias
Sangal Esports
...

Подозреваю что нужно использовать метод get(), но получаю ошибку.
  • Вопрос задан
  • 75 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Maksim_64
@Maksim_64
Data Analyst
team = old.find("a")['title'] перед этим обернуть все try except потому что у тебя значение для некоторых 'a' получает значение None.
То есть как то так
for old in all_old_teams:
    try:
        team = old.find("a")['title']
        print(team)
    except TypeError:
        print(None)
Ну и свою логику там настраивай собирай их куда тебе надо и т.д.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@boriss08
познаю Python. Парсинг, Aiogram
res = []
for old in all_old_teams:
    if (team := old.find_all("a")) != []:
    	res.append(team[0].get('title'))

res = set(res)


вот хороший код, команды собирает во множество ( без дубликатов) и всяческих ошибок из за хитрого решения
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы