[python3] beautifulsoup4で特定タブのみのimgタブurlを抜き出したい

この方法だと最初のメソッドによりリスト化しているのでうまく行かないと思いますが
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 コメント