невозможно получить значение с плавающей точкой при разборе строки json в Beautifulsoup - PullRequest
0 голосов
/ 17 октября 2018

Я новичок в изучении веб-страниц, я использую Python и Beautifulsoup, чтобы получить некоторые детали с веб-страницы, и я могу получить некоторую строку json оттуда.Но это не дает значение с плавающей точкой, скажем, "shippingPrice": 5.99, поэтому кто-то, пожалуйста, помогите мне получить то же самое.

Вот мой исходный код -

from bs4 import BeautifulSoup
import requests
import re
import json

url = "https://www.walmart.com/ip/Mainstays-Black-5-Cup-Coffee-Maker-with-Removable-Filter-Basket/53056868"

s = requests.session()  #start requests session    
page = s.get(url)  #get the page
soup = BeautifulSoup(page.content,features="lxml")  #parse the html

pathInfo = soup.find_all('script')[6]
data = re.search(r"window.__WML_REDUX_INITIAL_STATE__ = (.*?);$",pathInfo.text).group(1)

if(len(data)):
    pInfo = json.loads(data[:-2])        
    selectedProductId = pInfo["productBasicInfo"]["selectedProductId"]
    offerId = pInfo["product"]["products"][selectedProductId]["offers"][0]
    shippingPrice = pInfo["product"]["offers"][offerId]["shippingPrice"]       

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