Transfermarkt url id соскоб - PullRequest
0 голосов
/ 24 августа 2018

По сути, я хочу создать инструмент, в котором вы вводите имя игрока (как оно есть на Transfermarkt, это хорошо), и он дает вам список товарищей по команде .Я могу очистить это с beautifoulsoup.Проблема в том, что этот сайт имеет случайные идентификаторы для каждого профиля / страницы .Есть ли способ сделать это без необходимости очищать все профили игроков?Если нет, как я могу очистить всю базу данных?(только страница с товарищами по команде для каждого игрока)

1 Ответ

0 голосов
/ 24 августа 2018

Как написано в комментариях, вы можете использовать страницу поиска для извлечения конкретной страницы игрока.

Например, рассмотрим следующий пример.

import requests

headers = {
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
}


player = "Modric"
data=requests.get("https://www.transfermarkt.com/schnellsuche/ergebnis/schnellsuche?query={}&x=0&y=0".format(player), headers=headers) 

soup = BeautifulSoup(data.text, "lxml")

table = soup.find("table", { "class" : "items" })

for row in table.find_all("table", { "class" : "inline-table" }):

    hrefs = row.find("a", {"class" : "spielprofil_tooltip"})

    print("player : {}".format(hrefs['title']))
    print("url : {}".format(hrefs['href']))

Затем, согласнок результатам вы можете проверить для конкретного игрока.Обратите внимание, что таблица результатов содержит дополнительную информацию, такую ​​как team, position, age,..., которую вы можете использовать, чтобы убедиться, что игрок правильный

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...