2017-11-25 11 views
0

ウェブページ上のデータを検索したい。角度の片方向結合データを掻き集める

ここは私のPython3コードです。

import requests 
r = requests.get('https://coincheck.com/ja/exchange/charts/coincheck/btc_jpy/300') 
print(r.text) 

これは結果の一部です。このHTMLで

<div class="chart"> 
     <div class="candle-chart" ex-chart-candle chart-height="500" chart-unit="300" arrow-height="20" chart-market="coincheck" chart-pair="btc_jpy" chart-volume> 
     <div class="ohlcv"> 
      <span class="box"> 
      <span class="key">Date</span> 
      <span class="value date-value"></span> 
      </span> 
      <span class="box"> 
      <span class="key">O</span> 
      <span class="value o-value"></span> 
      </span> 
      <span class="box"> 
      <span class="key">H</span> 
      <span class="value h-value"></span> 
      </span> 
      <span class="box"> 
      <span class="key">L</span> 
      <span class="value l-value"></span> 
      </span> 
      <span class="box"> 
      <span class="key">C</span> 
      <span class="value c-value"></span> 
      </span> 
      <span class="box"> 
      <span class="key">V</span> 
      <span class="value v-value"></span> 
      </span> 
     </div> 

、私は ...「値O-値」、「値h-値」などをキャッチしたい。しかし、彼らは無価値のように見えます。

さらに、このWebサイトではAngularが使用されていますが、これらの値は単方向バインディングだと思います。

これらのデータはどのように取得できますか?それは不可能ですか?

ありがとうございました。

答えて

0

標準html.parserを使用できますが、BeautifulSoupのほうがはるかに簡単です。

import requests 
r = requests.get('https://coincheck.com/ja/exchange/charts/coincheck/btc_jpy/300') 

from bs4 import BeautifulSoup 
soup = BeautifulSoup(r.text, 'html.parser') 
soup.find_all("span", class_="value o-value") 
+0

ありがとうございました。私はそれを試みたが、同じ結果。 –

+0

おそらく私はあなたの質問を得ていませんでした。 私のコードをあなたの例に加えて、私は '[]'を得ました。あなたが望むものではありませんか? – eMMe

+0

はい、そうです。 'soup.find_all(" span "、class _ =" value o-value ")'を出力しました。これは結果です: '[]' 思う。 –