div.children이있는 반복자를 반환합니다. '\n'
이 .children
에있는 것처럼
for div in nsoup.find_all(class_='cities'):
for childdiv in div.find_all('div'):
print (childdiv.string) #london, york
AttributeError 때문에 비 태그 제기했다. 적절한 하위 선택기를 사용하여 특정 div를 찾으십시오.
(이상 편집)하여 예외를 재현 할 수 없습니다 - 여기에 내가 무슨 짓을했는지의 :
In [137]: print foo.prettify()
<div class="cities">
<div id="3232">
London
</div>
<div id="131">
York
</div>
</div>
In [138]: for div in foo.find_all(class_ = 'cities'):
.....: for childdiv in div.find_all('div'):
.....: print childdiv.string
.....:
London
York
In [139]: for div in foo.find_all(class_ = 'cities'):
.....: for childdiv in div.find_all('div'):
.....: print childdiv.string, childdiv['id']
.....:
London 3232
York 131
'children'는'contents'이있는 각 하나가 아이들의 순서입니다. 시퀀스 자체에는 '내용'이 없습니다. '[1, 2, 3]'이 정수가 아닌 것과 같습니다. 한편, 어떤 순서와 마찬가지로 첫 번째 값을 얻으려면'next (iter (div.children)) '를 사용할 수 있습니다. – abarnert