<tr>
<td class="td11">2590</td>
<td class="td12">ダイドーグループホールディングス</td>
<td class="td11">東証1部</td>
<td class="td11">1月20日</td>
<td class="td11"><a href="https://stocks.finance.yahoo.co.jp/stocks/detail/?code=2590" target="_blank">株価</a> | <a href="
https://info.finance.yahoo.co.jp/stockholder/detail/?code=2590" target="_blank">優待</a></td>
</tr>
ちなみにこのようなコードを用意していました。
```ここに言語を入力
import requests, bs4
res = requests.get('https://kabu.hikak.com/01000000/')
res.raise_for_status()
soup = bs4.BeautifulSoup(res.text, "html.parser")
table = soup.find('table',{'class':'table01'})
nans = table.find_all('tr')
for nan in nans:
print(nan.td[2])
```
この内容でスクレイピングをしたいのですが、<tr>内の<td>を、1個目3個目のように順番で指定して取り出すことはできますでしょうか?
今の段階では<tr>で取り出してテキストを抽出する事しかできませんが、特定の値を取得できるようにしたいと考えています。
どなたかわかる方がいましたら、よろしくお願いいたします。
コードをご提示ください。
import requests, bs4 res = requests.get('https://kabu.hikak.com/01000000/') res.raise_for_status()
soup = bs4.BeautifulSoup(res.text, "html.parser")
table = soup.find('table',{'class':'table01'})
nans = table.find_all('tr')
for nan in nans:
print(nan.td[2])
のようなコードを用意していました。Key error と出てしまいます。
ごめんなさい改行しても投稿すると反映されませんのでかなり見づらくなってしまっています。
teratailではソースコードをシンタックスハイライトすることができます。質問を編集し、コード部分を選択、<code>というボタンを押してください。PCであればプレビューが出ていると思いますので確認しながら編集してください。https://teratail.com/help/question-tips#questionTips3-5-1
回答2件
あなたの回答
tips
プレビュー