teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

編集ついでに追記

2019/12/16 12:26

投稿

barobaro
barobaro

スコア1286

answer CHANGED
@@ -3,7 +3,19 @@
3
3
  CSSセレクタの種類
4
4
  http://www.htmq.com/csskihon/005.shtml
5
5
 
6
+ CSSセレクタで書くと
6
7
  ```python
7
8
  for i in soup.select("div.item1 > div.item_name"):
8
- print(i.get_text(strip=True)
9
+ print(i.get_text(strip=True))
9
- ```
10
+ ```
11
+ divタグのclassがitem1の直下にあるdivタグのclassがitem_nameのテキストとなります
12
+
13
+ findとfind_allで書くと
14
+ ```python
15
+ for i in soup.find("div", class_="item1").find_all("div", class_="item_name"):
16
+ print(i.get_text(strip=True))
17
+ ```
18
+ divタグのclassがitem1の下にあるdivタグのclassがitem_nameのテキストとなります
19
+
20
+ findやfind_allを重ねてかかないといけないため細かくなるとたくさん書かないといけないため
21
+ CSSセレクタで書く方がシンプルに書くことができます。

1

1と2を間違え

2019/12/16 12:26

投稿

barobaro
barobaro

スコア1286

answer CHANGED
@@ -4,6 +4,6 @@
4
4
  http://www.htmq.com/csskihon/005.shtml
5
5
 
6
6
  ```python
7
- for i in soup.select("div.item2 > div.item_name"):
7
+ for i in soup.select("div.item1 > div.item_name"):
8
8
  print(i.get_text(strip=True)
9
9
  ```