Span ID возвращает пустую строку при извлечении цены - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь получить цену из тега div ID, чтобы показать, когда я пытаюсь напечатать

import requests
from bs4 import BeautifulSoup
URL="https://www.futbin.com/20/player/75/ruud-gullit"
headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36"}
page = requests.get(URL,headers=headers)
soup=BeautifulSoup(page.content,"html.parser")
title=soup.find(id="Player-card").get_text()
price = soup.find(id="ps-lowest-2").get_text()
print(price)

, она должна показывать цену игрока, но возвращает только «-»

1 Ответ

1 голос
/ 25 октября 2019

Это потому, что страница динамически загружает цену. Таким образом, HTML, который вы получаете со скребком, отличается в вашем браузере, потому что ваш браузер загружает javascript и, следовательно, данные, а скребок - нет.

Редактировать: для вас все возможное. Я бы проверил сеть сайта и запомнил, как называется URL, чтобы узнать цену игрока. Я вижу URL: https://www.futbin.com/20/playerPrices?player=238434&rids=238433,214100&_=1572009060306 Это даст вам BLOB-объект json, где вы сможете найти цену. Играйте с аргументами, чтобы получить то, что вы хотите.

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