BeautifulSoup kullanıyorum ve bazı HTML'leri ayrıştırıyorum.
Her HTML'den belirli bir veri alıyorum (for döngüsünü kullanarak) ve bu verileri belirli bir listeye ekliyorum.
Sorun şu ki, bazı HTML'lerin farklı biçimleri var (ve benim istediğim verilere sahip değiller) .
Bu yüzden, istisna işlemeyi kullanmaya ve null
listeye değer katmaya çalışıyordum (veri dizisi önemli olduğu için bunu yapmalıyım.)
Örneğin, şöyle bir kodum var:
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
ve bazı bağlantılarda hiç yok <dd class='title'>
, bu yüzden yapmak istediğim şey null
listeye dize eklemek .
Hata belirir:
list index out of range.
Yaptığım şey şuna benzer bazı satırlar eklemektir:
if not dlist[1]:
newlist.append('null')
continue
Ama yürümüyor. Hala hata gösteriyor:
list index out of range.
Bununla ilgili ne yapmalıyım? İstisna işlemeyi kullanmalı mıyım? veya daha kolay bir yolu var mı?
Baska öneri? Herhangi bir yardım gerçekten harika olurdu!
None
Açıkça daha temiz olsa da, OP'null'
bu durumda istiyor .