netkeiba.com様から、python2.7,beautifulsoupでの競馬情報をスクレイピングしておりますが、うまく出来ません。
# -*- coding:utf-8 -*- import urllib2 import codecs import time from bs4 import BeautifulSoup url = 'http://db.netkeiba.com/horse/2013106055/' soup = BeautifulSoup(urllib2.urlopen(url).read(), "lxml") tekisei = soup.find('div', {'class': 'db_h_rank_review'}).findAll('td') tekisei_1 = tekisei[0].text print tekisei_1.strip()
<div class="db_h_rank_review"> <div class="categorybar_line" > <h3 class="categorybar"><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/icon_db_tekisei_02.png" width="20" height="20" alt="" />みんなの適性レビュー</h3> </div> <dl> <dd> <table summary="アストラエンブレムの適性レビュー"> <tr> <th>コース適性</th> <td><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_turf_blue.png" width="26" height="17" alt="芝" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="150" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_centerline.png" width="1" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="44" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_dirt_gray.png" width="26" height="17" alt="ダート" /></td> </tr> <tr> <th>距離適性</th> <td><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_sprint_blue.png" width="26" height="17" alt="短い" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="134" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_centerline.png" width="1" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="60" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_styer_gray.png" width="26" height="17" alt="長い" /></td> </tr> <tr> <th>脚質</th> <td><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_nige_gray.png" width="26" height="17" alt="逃げ" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="36" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_centerline.png" width="1" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="158" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_oikomi_blue.png" width="26" height="17" alt="追込" /></td> </tr> <tr> <th>成長</th> <td><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_soujuku_blue.png" width="26" height="17" alt="早熟" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="132" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_centerline.png" width="1" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="62" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bansei_gray.png" width="26" height="17" alt="晩成" /></td> </tr> <tr> <th>重馬場</th> <td><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_tokui_blue.png" width="26" height="17" alt="得意" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="114" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_centerline.png" width="1" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="80" height="17" /><img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_nigate_gray.png" width="26" height="17" alt="苦手" /></td> </tr>
上記の小生のスクリプトは、tdをはきだすことは、確認しております。
tekisei = soup.find('div', {'class': 'db_h_rank_review'}).findAll('td')
ここまでは、良いのですが、上記にございます、目的のソースコードの中の 指定したwidth="○○" の数値を取りたいのですがうまく出来ません。
具体的には、
コース適性
<img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="150"
距離適性
<img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="134"
脚質
<img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_gray.png" width="36"
成長
<img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="132"
重馬場
<img src="http://cimg2.db.netkeiba.com/style/netkeiba.ja/image/review_bar_blue.png" width="114"
上記のwidth="○○" の数値を取りたいのです。
いろいろ、試しましたが、うまく出来ませんでした。
先輩方の御教示、よろしくお願いいたします。
![guest](/img/icon/icnUserSample.jpg)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/08 11:27
2017/06/08 11:43
2017/06/09 10:27
2017/06/09 14:11
2017/06/09 19:35