第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

通過(guò)網(wǎng)絡(luò)抓取在 python 中使用正則表達(dá)式排除字符串的一部分

通過(guò)網(wǎng)絡(luò)抓取在 python 中使用正則表達(dá)式排除字符串的一部分

MMMHUHU 2024-01-27 16:12:57
我正在嘗試從電子商務(wù)網(wǎng)站上抓取一些數(shù)據(jù)用于個(gè)人項(xiàng)目。我正在嘗試從 html 構(gòu)建一個(gè)嵌套的字符串列表,但 html 的一部分出現(xiàn)問(wèn)題。每個(gè)列表項(xiàng)如下所示:<div class="impressions" data-impressions=\'{"id":"01920","name":"Sleepy","price":12.95,"brand":"Lush","category":"Bubble Bar","variant":"7 oz.","quantity":1,"list":"/bath/bubble-bars/sleepy/9999901920.html","dimension11":"","dimension12":"Naked,Self Preserving,Vegan","dimension13":1,"dimension14":1,"dimension15":true}\'></div>我現(xiàn)在擁有的是一個(gè)正則表達(dá)式,它可以將 data-impressions 標(biāo)簽中的所有項(xiàng)目像這樣轉(zhuǎn)換并在逗號(hào)處分割它們:list_return = [re.findall('\{([^{]+[^}\'></div>])', i) for i in bathshower_impressions]list_return = [re.split(',', list_return[i][0]) for i in range(0, len(list_return))]這為我提供了每個(gè)事物的列表列表,這些列表將成為字典中的鍵:值對(duì)。對(duì)于上面的示例,第二級(jí)項(xiàng)目如下:[['"id"', '"01920"'],  ['"name"', '"Sleepy"'],  ['"price"', '12.95'],  ['"brand"', '"Lush"'],  ['"category"', '"Bubble Bar"'],  ['"variant"', '"7 oz."'],  ['"quantity"', '1'],  ['"list"', '"/bath/bubble-bars/sleepy/9999901920.html"'],  ['"dimension11"', '""'],  ['"dimension12"', '"Naked'],  ['Self Preserving'],  ['Vegan"'],  ['"dimension13"', '1'],  ['"dimension14"', '1'],  ['"dimension15"', 'true']]我的問(wèn)題是維度 12,我不知道如何排除該維度以逗號(hào)分隔,以便該列表顯示為:['"dimension12"', '"Naked,Self Preserving,Vegan"']如有任何幫助,我們將不勝感激,謝謝。
查看完整描述

1 回答

?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊

我想建議一種不同的方法。該屬性值看起來(lái)像JSON,那么為什么不使用json模塊呢?這樣,您就有了一個(gè)現(xiàn)成的數(shù)據(jù)結(jié)構(gòu),可以進(jìn)一步修改。


import json

from bs4 import BeautifulSoup



html_list = [

"""<div class="impressions" data-impressions=\'{"id":"01920","name":"Sleepy","price":12.95,"brand":"Lush","category":"Bubble Bar","variant":"7 oz.","quantity":1,"list":"/bath/bubble-bars/sleepy/9999901920.html","dimension11":"","dimension12":"Naked,Self Preserving,Vegan","dimension13":1,"dimension14":1,"dimension15":true}\'></div>""",

]


data_structures = []

for html_item in html_list:

    soup = BeautifulSoup(html_item, "html.parser").find("div", {"class": "impressions"})

    data_structures.append(json.loads(soup["data-impressions"]))


print(data_structures)

這會(huì)輸出一個(gè)字典列表:


[{'id': '01920', 'name': 'Sleepy', 'price': 12.95, 'brand': 'Lush', 'category': 'Bubble Bar', 'variant': '7 oz.', 'quantity': 1, 'list': '/bath/bubble-bars/sleepy/9999901920.html', 'dimension11': '', 'dimension12': 'Naked,Self Preserving,Vegan', 'dimension13': 1, 'dimension14': 1, 'dimension15': True}]

要訪(fǎng)問(wèn)所需的密鑰,只需執(zhí)行以下操作:


for data_item in data_structures:

    print(data_item["dimension12"])

印刷:Naked,Self Preserving,Vegan


查看完整回答
反對(duì) 回復(fù) 2024-01-27
  • 1 回答
  • 0 關(guān)注
  • 275 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)