Как извлечь текст из 'span' со значением, превышающим свойство, используя Python и lxml - PullRequest
1 голос
/ 10 октября 2019

У меня возникла проблема при попытке извлечь некоторый текст из элемента span с помощью Python и lxml. Мне удалось это сделать для некоторых сайтов, но не для всех. Так что у меня есть функция, которая будет извлекать цену с сайта, это работало при использовании URL и xpath в следующем фрагменте кода.

def get_price(last_date):
    page = requests.get('https://www.komplett.no/product/954922/gaming/gaming-utstyr/gamingskjermer/hp-omen-27-gamingskjerm-z4d33aa')
    tree = html.fromstring(page.content)
    prices = tree.xpath('//span[@class="product-price-now"]/text()')
    currentPrice = 0
    for string in prices:
        currentPrice = string.strip(",-")
        print(currentPrice)
    foo(currentPrice, last_date)

Но когда я пытался использовать тот же метод, используя другой URL идругой элемент span с более чем одним свойством, это не сработает, вот фрагмент кода элемента span, я не могу получить текст с использованием

<span class="DFlfde SwHCTb" data-precision="2" data-value="77954.88534">77,954.89</span>

Затем я попытался извлечь текст из этого spanэлемент, выполнив следующее:

prices = tree.xpath('//span[@class="DFlfde SwHCTb"]/text()')

Но это не сработало, есть идеи почему`?

...