from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium_stealth import stealth
import time
arts = [
'840055507'
]
cards = []
def saveCardInfo(art):
cst = driver.find_element(By.CSS_SELECTOR,"div[data-widget^='webPrice']")
print(cst.text.split('\n'))
print(cst.text)
def initDriver():
driver = webdriver.Chrome()
stealth(driver,
platform="Win32")
return driver
driver = initDriver()
driver.get('https://www.ozon.ru/')
for art in arts:
time.sleep(1)
srch_inp = driver.find_element(By.TAG_NAME, 'input')
srch_inp.send_keys(f"{art}\n")
saveCardInfo(art)
driver.quit()
上面的代码解析了臭氧上的某些产品。获取商品价格时出现问题:执行代码时,显示以下内容:
['1\u2009151\u2009₽', '有 Ozon 卡', '1\u2009187\u2009₽', '4\u2009290\u2009₽', '没有 Ozon 卡']
1,151 卢布
持臭氧卡
1,187 卢布
4,290 卢布
无臭氧卡
问题在于同样的价值不同,即产品本身的价格标签。例如,如果你只是打印它会显示“1,151 ₽”,如果你把它放在一个列表或变量中它会看起来像“1\u2009151\u2009₽”我也尝试过BeatifulSoup,结果是一样的。
这可能与什么有关以及可以采取什么措施?