スクレイピングした際のCSV保存(競馬の出馬表)
こんにちは。
皆様のお力をお借りしたく、質問をさせていただきます。
まだまだpython初心者のため、変な書き方や質問をしてしまうかもしれませんが
ご了承いただければ幸いです。
現在、競馬の出馬表をスクレイピングしようと考えております。
そこでスクレイピングした結果をCSVに保存しようとするため
以下のコードを入力しました。
スクレイピングの元ページは
http://race.netkeiba.com/?pid=race&id=c201605050211&mode=shutuba
こちらの出馬表となります。
===========================================
import csv
from urllib.request import urlopen
from bs4 import BeautifulSoup
#URLの指定
html = urlopen("http://race.netkeiba.com/?pid=race&id=c201605050211&mode=shutuba")
bsObj = BeautifulSoup(html, "html.parser")
#テーブルを指定
table = bsObj.findAll("table",{"class":"race_table_01 nk_tb_common shutuba_table"})[0]
rows = table.findAll("th")
csvFile = open("keiba.csv", 'wt', newline = '', encoding = 'utf-8')
writer = csv.writer(csvFile)
try:
for row in rows:
csvRow = []
for cell in row.findAll(['td', 'th']):
csvRow.append(cell.get_text())
writer.writerow(csvRow)
finally:
csvFile.close()
============================================
このように入力してエンターを押すと、
80
559
565
596
634
629
622
561
578
559
633
627
545
642
575
628
このような数字が出力されました。
何が起こっているのかよくわからず、皆様にお伺いさせていただきたく
質問をさせていただきます。
なお、デスクトップには出力用のCSV(keiba.csv)ファイルは作っております。
どのようにすればCSVへ直接的に入力することが可能になりますでしょうか。
また、今後はSQLを使ってデータベースに出馬表のデータを保存していきたいと考えております。
その際に参考となるWEBページなどございましたら、ご教示頂けますと幸いです。
長々となり恐縮ではございますが、ご確認お願い致します。