使用漂亮的蟒蛇抓取具有相同类名的特定元素时遇到麻烦



如何提取带有状态信息的文本 半家具,立即可供家庭使用,半家具。

由于div class="proDetailsRowElm" 具有详细信息和状态信息,我最终会在列表中获得详细信息的状态信息。

你能帮我只获取状态信息吗?

网页代码

<div class="proDetailsRowElm">
<label>Details:</label>
<div class="proDetailsRow__list">
<span class="proDetailsRow__item">3 Bathroom</span>
<span class="proDetailsRow__item">3 Balcony</span>
</div>
&nbsp;&nbsp;<a class='stop-propagation underline font-type-4 view-details-link' href="javascript:void(0);" onclick="stopPage=true;window.open('/propertyDetails/3-BHK-1800-Sq-ft-Multistorey-Apartment-FOR-Rent-Kadubeesanahalli-in-Bangalore&id=4d423330363332363633', '_blank');callDetailPropertData('30632663');addViewedPropertyToCookie('30632663',1);detailViewTrack('30632663');clicktrack('1', 'propertyId=30632663,'+'2', 'div'+',sessionId='+sessionId  ,'Rent','Kadubeesanahalli','Agent','91','Bangalore' ,'','', 'N','35,000','','3','Multistorey Apartment','','','8','','',false,'','',''); trackPropertyPosition('1', '2', '30632663', 'div')"></a>
</div>
<div class="proDetailsRowElm">
<label>Status:</label>
Semi-Furnished,
Available immediately for Family
</div>

蟒蛇代码

property_status_list=soup.find_all('div',class_='proDetailsRowElm')
for property_status in property_status_list:
    for element in property_status_list:
        print(element.text)

以上代码输出

详:3 浴室3 阳台

地位:带家具的立即为家庭提供

所需输出

地位:带家具的立即为家庭提供

我绝不是美丽汤专家,但您可以使用next_sibling

property_status_list=soup.find_all('div',class_='proDetailsRowElm')
for property_status in property_status_list:
    try:
        k = property_status.find('label', text='Status:').next_sibling
        print(repr(k))
    except:
        pass

返回:

'nSemi-Furnished,nAvailable immediately for Familyn'

最新更新