Я пытаюсь соскрести цены на клюшки с данного URL. В конце концов я также хотел бы получить имена + URL, но я не считаю это необходимым для решения этой проблемы.
Вот что у меня есть:
import requests
from pandas.io.json import json_normalize
from bs4 import BeautifulSoup
url = 'https://www.prohockeylife.com/collections/senior-hockey-sticks'
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
page = requests.get(url)
soup = BeautifulSoup(page.text, 'html.parser')
stick_names = soup.find_all(class_='product-title')
stick_prices = soup.find_all(class_='regular-product')
print(stick_prices)
Приведенный выше код успешно возвращает цены на клюшки, но выглядит это так:
[<p class="regular-product">
<span>$319.99</span>
</p>, <p class="regular-product">
<span>$339.99</span>
</p>, <p class="regular-product">
<span>$319.99</span>
Я бы хотел почистить его и вернуть только фактическую цену.
Я пробовал несколько вещей, в том числе:
dirty_prices = soup.find_all(class_='regular-product')
clean_prices = dirty_prices.get('a')
print(clean_prices)
Но без особого успеха. Указатели приветствуются!