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

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

使用 beautiful-soup 提取特定標(biāo)簽的元素

使用 beautiful-soup 提取特定標(biāo)簽的元素

呼喚遠(yuǎn)方 2023-10-04 16:02:01
我想從特定標(biāo)簽中提取元素。例如 - 一個(gè)站點(diǎn)中有四個(gè)。每個(gè)標(biāo)簽都有其他兄弟標(biāo)簽,如 p、h3、h4、ul 等。我想分別查看 h2[1] 元素、h2[2] 元素。這就是我到目前為止所做的。我知道 for 循環(huán)沒(méi)有任何意義。我也嘗試附加文本但無(wú)法成功。然后我嘗試按特定字符串進(jìn)行搜索,但它給出了該特定字符串的唯一標(biāo)簽,而不是所有其他元素from bs4 import BeautifulSouppage = "https://www.us-cert.gov/ics/advisories/icsma-20-079-01"resp = requests.get(page)soup = BeautifulSoup(resp.content, "html5lib")content_div=soup.find('div', {"class": "content"})all_p= content_div.find_all('p')all_h2=content_div.find_all('h2')i=0for h2 in all_h2:  print(all_h2[i],'\n\n')  print(all_p[i],'\n')  i=i+1還嘗試使用追加 tags = soup.find_all('div', {"class": "content"}) container = [] for tag in tags:  try:    container.append(tag.text)    print(tag.text)  except:    print(tag)我是編程方面的新手。請(qǐng)?jiān)徫以愀獾木幋a能力。我只想看到一切都在“緩解”之下。因此,如果我想將其存儲(chǔ)在數(shù)據(jù)庫(kù)中,它將解析與一列上的緩解相關(guān)的所有內(nèi)容。
查看完整描述

1 回答

?
ITMISS

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

["p","ul","h2","div"]您可以使用findNextwith查找靜態(tài)標(biāo)簽列表recursive=False以保持在頂層:


import requests

from bs4 import BeautifulSoup

import json


resp = requests.get("https://www.us-cert.gov/ics/advisories/icsma-20-079-01")

soup = BeautifulSoup(resp.content, "html.parser")


content_div = soup.find('div', {"class": "content"})


h2_list = [ i for i in content_div.find_all("h2")]

result = []

search_tags = ["p","ul","h2","div"]


def getChildren(tag): 

    text = []

    while (tag):

        tag = tag.findNext(search_tags, recursive=False)

        if (tag is None):

            break

        elif (tag.name == "div") or (tag.name == "h2"):

            break

        else:

            text.append(tag.text.strip())

    return "".join(text)


for i in h2_list:

    result.append({

        "name": i.text.strip(),

        "children": getChildren(i)

    })


print(json.dumps(result, indent=4, sort_keys=True))


查看完整回答
反對(duì) 回復(fù) 2023-10-04
  • 1 回答
  • 0 關(guān)注
  • 184 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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