この方法だと最初のメソッドによりリスト化しているのでうまく行かないと思いますが
soup.find_all('div',class_='entry').find_all('img')
find_all
の結果はリストなので、リストの各要素に対してfind_all('img')
する必要があります。
Python
1for div_tag in soup.find_all('div',class_='entry'):2 for img_tag in div_tag..find_all('img'):
ただし、今回はdiv.entry
は1つだけのようなので、
Python
1fot img_tag in soup.find('div',class_='entry').find_all('img'):
で良いかと思います。
もっと簡単に処理できる方法があるならばお教えいただきたいです.よろしくお願いいたします.
は、別の回答のようにCSSセレクターを使う方法があります。
あと、複数の要素が入ったリストを変数に代入して、その後for
で各要素を処理する場合は、リストの変数名を複数形、各要素の変数名は単数形にすると分かり易いです。
Python
1tags = soup.find_all(~~~)2for tag in tags:3 ~~
今回は、一旦変数に代入する意味が無いので、上記例では代入してませんが。
0 コメント