import enum
import requests
from bs4 import BeautifulSoup
import json
import pandas as pd
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.3"
}
r = requests.get("https://www.fleetpride.com/parts/otr-brake-drum-otr1601b")
soup = BeautifulSoup(r.content, "html5lib")
raw_json = ""
for table_index,table in enumerate( soup.find_all("script")):
if('CCRZ.detailData.jsonProductData = {"' in str(table)):
x=str(table).split('CCRZ.detailData.jsonProductData = {"')
raw_json = "{\"" str(x[-1]).split('};')[0] "}"
break
req_json = json.loads(raw_json)
# uri = req_json.keys()
print(req_json)
這是我運行代碼時的輸出顯示:

我想要像這樣的論文,json format如果可能的話,可以轉換成這種格式,你能告訴我們如何轉換成如下所示的 json 形式嗎?我很感激你:
{
"mediaWrappers": {
"Alternate Images": [{
"uri": "https://www.fleetpride.com/imagesns/PDPF/OTR1601B-Webb copy.jpg",
"mediaName": "https://www.fleetpride.com/imagesns/PDPF/OTR1601B-Webb copy.jpg",
"sourceType": "URI",
"URI": "https://www.fleetpride.com/imagesns/PDPF/OTR1601B-Webb copy.jpg",
"startDate": "2018-05-23",
"sequence": 2,
"productMediaId": "OTR-OTR1601B-Alternate Images-2",
"mediaType": "Alternate Images",
"locale": "en_US",
"endDate": "2099-12-31",
"enabled": true,
"altMessage": "OTR OTR OTR1601B",
"sfdcName": "406524",
"sfid": "a8B1W000000c4a1UAA",
"product": "a8G1W000000Y7DfUAK"
},
uj5u.com熱心網友回復:
兩個輸出都是 JSON 格式。您正在尋找的是所謂的漂亮列印。閱讀有關json.dumps()及其選項。您想使用該indent選項。
...
pretty = json.dumps(req_json, indent=4)
print(pretty)
uj5u.com熱心網友回復:
您可以在json.loads().
with open("req_json.json", "w") as f:
json.dump(req_json, f, indent=4)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/485039.html
上一篇:使用R抓取網頁動態網頁
下一篇:pdf檔案不會下載
