やりたいこと
pythonでスクレイピングを行う際の改行している文字のスクレイピングを行いたいと
思っております。
CSS
1<table> 2<div class="contentsFrame1_inner"> 3 4 <tr> 5 <td class=" is-lineH2" rowspan="4"> 6 54 7 <br>11.77 8 <br>30.77 9 </td> 10 </tr> 11 </div> 12 </table>
上記のように構成されており、(長いので省略しております)
これのスクレイピングを行う為に、下記のコードを書きました。
python
1from bs4 import BeautifulSoup 2import requests 3import pandas as pd 4from pandas import Series,DataFrame 5 6NF=[] 7url = 'aaaa' 8result = requests.get(url) 9c = result.content 10soup = BeautifulSoup(c,'lxml') 11summary = soup.find('div',{'class':'contentsFrame1_inner'}) 12table = summary.find_all('table') 13rows = table[1].find_all('tr') 14for tr in rows: 15 cols = tr.find_all('td',{'class':'is-lineH2'}) 16 for td in cols: 17 text = td.find(text=True) 18 NF.append(text) 19
上記でコードを書いたところ、
<td class=" is-lineH2" rowspan="4"> 54 <br>11.77 <br>30.77 </td> </tr> '54'はリストに入っておりましたが、 <br>で区切られている '11.77' '30.77' についてはリストに入っておりませんでした。 そこで、<br>の箇所までスクレイピングを行う方法をご教示いただけますでしょうか? よろしくお願いいたします。回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/16 23:09
2018/08/17 23:25