Python腳本
import requests
import json
from bs4 import BeautifulSoup
import re
url = 'https://www.dunelm.com/product/caldonia-check-natural-eyelet-curtains-1000187301?defaultSkuId=30729125'/span>
r = requests.get(url)
soup = BeautifulSoup(r.content,'html.parser')
# 保存源代碼到檔案,以便測驗。
with open("sourcecode.html"/span>, "w"/span>, encoding='utf-8') as file:
file.write(str(shoup))
# Regex模式來捕捉網頁源代碼中的JSON資料。
regex_pattern = r"{"delivery "*.*false*}}"/span>
我試圖使用Regex拉出嵌入上述URL的源代碼中的JSON資料。
我從所列的URL中手動提取了源代碼,并使用以下regex模式進入regex101.com:
{"delivery "*.*false*}}。
這個regex模式似乎可以捕獲所需的JSON資料。
問題
當我查看soup變數或保存檔案的內容時,它似乎捕捉到了HTML源代碼。 然而,我不知道如何處理 regex 以僅捕獲構建我所需的 Python Dictionary 所需的 JSON 資料字串。如果能得到任何幫助,我們將不勝感激。
uj5u.com熱心網友回復:
也許像這樣的東西可以幫助你:
url = 'https://www.dunelm.com/product/caldonia-check-natural-eyelet-curtains-1000187301?defaultSkuId=30729125'
r = requests.get(url)
source_text = r.text
# Regex用于提取資訊。
json = re.findall('put your regex here', source_text)
為了將回傳的串列轉換為json,你可以使用:
。import json>
json_format = json.dumps(json)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/315104.html
標籤:
