Używam BeautifulSoup i parsowanie niektórych HTML-ów.Chcę, aby wyjątek obsługiwał indeks listy poza zakresem.
Otrzymuję określone dane z każdego kodu HTML (przy użyciu pętli) i dodawanie tych danych do określonej listy.
Problem polega na tym, że niektóre z HTML-ów mają inny format (i nie mają w nich danych, które w nich chcę).
Więc starałem się korzystać z obsługi wyjątków i dodać wartość null
do listy (. Należy to zrobić, ponieważ sekwencja danych jest ważne)
Na przykład, mam kod jak:
soup = BeautifulSoup(links)
dlist = soup.findAll('dd', 'title')
# I'm trying to find content between <dd class='title'> and </dd>
gotdata = dlist[1]
# and what i want is the 2nd content of those
newlist.append(gotdata)
# and I add that to a newlist
a niektóre z linków nie ma żadnych <dd class='title'>
, więc to, co chcę zrobić, to dodać ciąg null
do listy zamiast.
Błąd pojawia się:
list index out of range.
Co mam zrobić starał się dodać kilka wierszy tak:
if not dlist[1]:
newlist.append('null')
continue
Ale to nie wyszło. Wciąż pokazuje błąd:
list index out of range.
Co powinienem zrobić? Czy powinienem używać obsługi wyjątków? czy jest jakiś łatwiejszy sposób?
Wszelkie sugestie? Każda pomoc byłaby naprawdę świetna!
@JhonIntriagoThoth: Podczas gdy 'Brak' jest wyraźnie czystszy, OP chce w tym przypadku' 'null''. – ThiefMaster