2017-06-02 18 views
1

誰もが私を助けることを願っています。私はかなりPythonの新人ですが、残念なことにアカウントを必要とするサイトのデータを削りたいのです。私は日付(すなわち、2017-06-01)を抽出することができません。Pythonを使用してhtmlからテキストを抽出

<li class="latest-value-item"> 
    <div class="latest-value-label">Date</div> 
    <div class="latest-value">2017-06-01</div> 
</li> 
<li class="latest-value-item"> 
    <div class="latest-value-label">Index</div> 
    <div class="latest-value">1430</div> 
</li> 

これは私のコードです:

import urllib3 
import urllib.request 
from bs4 import BeautifulSoup 
import pandas as pd 
import requests 
import csv 
from datetime import datetime 

url = 'https://www.quandl.com/data/LLOYDS/BCI-Baltic-Capesize-Index' 
r = requests.get(url) 
soup = BeautifulSoup(r.text, 'lxml') 

Baltic_Indices = [] 
New_Value = [] 

#new = soup.find_all('div', attrs={'class':'latest-value'}).get_text() 
date = soup.find_all(class_="latest value") 
text1 = date.text 

print(text1) 
+0

可能な複製(https://stackoverflow.com/questions/328356/extracting-text-from-html-file-using-python) – Umair

答えて

2

date = soup.find_all(class_="latest value")

あなたは('latest value' != 'latest-value'を)間違ったCSSクラス名を使用している

print(soup.find_all(attrs={'class': 'latest-value'})) 
# [<div class="latest-value">2017-06-01</div>, <div class="latest-value">1430</div>] 

for element in soup.find_all(attrs={'class': 'latest-value'}): 
    print(element.text) 
# 2017-06-01 
# 1430 

私はattrs kwargを使用することを好むが、あなたのメソッドも同様に動作します(正しいCSSクラス名が与えられています)

for element in soup.find_all(class_='latest-value'): 
    print(element.text) 
# 2017-06-01 
# 1430 
[パイソンを使用してHTMLファイルからテキストを抽出]の
関連する問題