質問編集履歴

2

コードの記載方法の変更を行いました。

2018/05/17 04:33

投稿

ryry73
ryry73

スコア11

test CHANGED
File without changes
test CHANGED
@@ -1,22 +1,22 @@
1
1
  <tr>
2
2
 
3
- <td class="td11">2590</td>
3
+ <td class="td11">2590</td>
4
4
 
5
- <td class="td12">ダイドーグループホールディングス</td>
5
+ <td class="td12">ダイドーグループホールディングス</td>
6
6
 
7
- <td class="td11">東証1部</td>
7
+ <td class="td11">東証1部</td>
8
8
 
9
- <td class="td11">1月20日</td>
9
+ <td class="td11">1月20日</td>
10
10
 
11
- <td class="td11"><a href="https://stocks.finance.yahoo.co.jp/stocks/detail/?code=2590" target="_blank">株価</a> | <a href="
11
+ <td class="td11"><a href="https://stocks.finance.yahoo.co.jp/stocks/detail/?code=2590" target="_blank">株価</a> | <a href="
12
12
 
13
13
  https://info.finance.yahoo.co.jp/stockholder/detail/?code=2590" target="_blank">優待</a></td>
14
14
 
15
- </tr>
15
+ </tr>
16
-
17
-
18
16
 
19
17
  ちなみにこのようなコードを用意していました。
18
+
19
+ ```ここに言語を入力
20
20
 
21
21
  import requests, bs4
22
22
 
@@ -34,6 +34,8 @@
34
34
 
35
35
    print(nan.td[2])
36
36
 
37
+ ```
38
+
37
39
  この内容でスクレイピングをしたいのですが、<tr>内の<td>を、1個目3個目のように順番で指定して取り出すことはできますでしょうか?
38
40
 
39
41
  今の段階では<tr>で取り出してテキストを抽出する事しかできませんが、特定の値を取得できるようにしたいと考えています。

1

コードを載せました。

2018/05/17 04:33

投稿

ryry73
ryry73

スコア11

test CHANGED
File without changes
test CHANGED
@@ -16,6 +16,24 @@
16
16
 
17
17
 
18
18
 
19
+ ちなみにこのようなコードを用意していました。
20
+
21
+ import requests, bs4
22
+
23
+ res = requests.get('https://kabu.hikak.com/01000000/&#039;)
24
+
25
+ res.raise_for_status()
26
+
27
+ soup = bs4.BeautifulSoup(res.text, "html.parser")
28
+
29
+ table = soup.find('table',{'class':'table01'})
30
+
31
+ nans = table.find_all('tr')
32
+
33
+ for nan in nans:   
34
+
35
+   print(nan.td[2])
36
+
19
37
  この内容でスクレイピングをしたいのですが、<tr>内の<td>を、1個目3個目のように順番で指定して取り出すことはできますでしょうか?
20
38
 
21
39
  今の段階では<tr>で取り出してテキストを抽出する事しかできませんが、特定の値を取得できるようにしたいと考えています。