Я пытаюсь получить сберегательную цену от newegg.com, но пока не могу разделить или извлечь текст
, пока у меня есть
save_percent = container.findAll('span', {'class': 'price-save-percent'})
, что дает мне
[<span class="price-save-percent">8%</span>]
мне нужно только 8%. До сих пор я пытался преобразовать вывод в список и проиндексировать его, но он не был сохранен правильно или так, как мне нужно. Я пытался преобразовать его в строку и использовать замену и перевод для удаления символов, но по какой-то причине ничего не сделал. Я застрял на том, что попробовать дальше, любая помощь будет высоко ценится.
РЕДАКТИРОВАТЬ.
import bs4
from urllib.request import urlopen as urlo
from bs4 import BeautifulSoup as soup
page = '1'
count = 0
my_url = 'https://www.newegg.com/Desktop-Graphics-Cards/SubCategory/ID-48/Page-'+ page +'?Tid=7709'
#opening connection
uClient = urlo(my_url)
page_html = uClient.read()
uClient.close()
page_soup = soup(page_html, "html.parser")
# Grabs Graphics card products contianers
containers = page_soup.findAll("div", {"class":"item-container"})
filename = 'graphics_cards.csv'
f = open(filename, "w")
headers = "brand, product_name, shipping, price\n"
f.write(headers)
for container in containers:
item_brand = container.findAll("a", {"class": "item-brand"})
brand = item_brand[0].img["title"]
title_container = container.findAll("a", {"class": "item-title"})
product_name = title_container[0].text
shipping_container = container.findAll("li", {"class": "price-ship"})
shipping = shipping_container[0].text.strip()
price_container = container.findAll("li", {"class", "price-current"})
price_list = price_container[0].text.split()
price = price_list[0]
save_percent = container.findAll('span', {'class': 'price-save-percent'})
percent_saved = save_percent
psave = percent_saved[0].text
print("brand " + brand)
print("product name " + product_name)
print("shipping " + shipping)
print('price' + price)
print('percent_saved' + psave)
f.write(brand + ',' + product_name.replace(',', '|') + ',' + shipping + ',' + psave + ',"' + price + '"\n')