こんばんは、今日のタイトルにもありますが、複数の要素の取得についてです!僕が最近ぶつかっていた課題もここからのものでした!
スクレイピングの際に
この写真でわかるように、classで情報を取るにもth、td一つのページにいくつもある事あります、こういう時どうしたらいいのか?
考え方としてはページ全体の情報を取得してから各thやtdにアクセスし子要素を取得するというやり方です!
以下のようにすることで、table > tdを取得できます。
table_elms = driver.find_elements_by_class_name(“テーブルの要素を指定”)
for table_elm in table_elms:
td = table_elm.find_elements_by_tag_name(“td”)
print(td[0].text)
print(td[1].text)
print(td[3].text)
コードで書くとこんな感じです!
テーブル要素を指定と書いてある所に抜き取りたい記事の全体のクラスを入れると全体の情報が取れます!
ちょっとわかりずらいですかねwww
で今回ぶつかった所ではこの抜き取った情報にリストとして任意のキーワードを入れたらリストからキーワードに適した情報を返して表示という物でしたw
何とかなりましたw
このfor 〜 〜 in〜〜何ちゃらっていうコードは結構使う見たいなので覚えておきましょう!
コメントを残す