這是運行soup[0].find_all('div', {'class':'font-160 line-110'})
的ResultSet
:爲什麼BeautifulSoup工作第二次解析,而不是第
[<div class="font-160 line-110" data-container=".snippet-container" data-html="true" data-placement="top" data-template='<div class="tooltip infowin-tooltip" role="tooltip"><div class="tooltip-arrow"><div class="tooltip-arrow-inner"></div></div><div class="tooltip-inner" style="text-align: left"></div></div>' data-toggle="tooltip" title="XIAMEN [CN]">
<a class="no-underline group-ib color-inherit"
href="/en/ais/details/ports/959">
<span class="text-default">CN</span><span class="text-default text-darker">XMN
</span>
</a>
</div>]
在試圖拔出XIAMEN [CN]
title
後,我無法使用a[0].find('div')['title]
(其中a
是在BeautifulSoup ResultSet
以上)。但是,如果我複製並粘貼HTML作爲一個新的字符串,比方說,
b = '''<div class="font-160 line-110" data-container=".snippet container" data-html="true" data-placement="top" data-template='<div class="tooltip infowin-tooltip" role="tooltip"><div class="tooltip-arrow"><div class="tooltip-arrow-inner"></div></div><div class="tooltip-inner" style="text-align: left"></div></div>' data-toggle="tooltip" title="XIAMEN [CN]">'''
然後做:
>>soup = BeautifulSoup(b, 'html.parser')
>>soup.find('div')['title']
>>XIAMEN [CN] #prints contents of title
爲什麼我要reSoup的湯?爲什麼這不適用於我的第一次搜索?
編輯的soup
產地:
我有urls
列表,我通過grequests
要去雖然。我正在尋找的東西之一是title
,其中包含XIAMEN [CN]
。
所以soup
的網址是
[
'http://www.marinetraffic.com/en/ais/details/ships/shipid:564352/imo:9643752/mmsi:511228000/vessel:DE%20MI',
'http://www.marinetraffic.com/en/ais/details/ships/shipid:3780155/imo:9712395/mmsi:477588800/vessel:SITC%20GUANGXI?cb=2267'
]
你在用湯[0]做什麼?它是什麼?很確定你正在做兩件完全不同的事情。 –
「湯」是ResultSet的列表,我使用'soup [0]'來訪問該列表的第一個條目。 –
你可以添加HTML或鏈接到頁面,因爲我非常自信你做錯了什麼。 –