URL ( http://www.pmo.cz/portal/nadrze/cz/mereni_1_mes.htm ) 에서 일부 데이터를 가져 오는 스크립트를 작성하고 있습니다. 모든 내가 필요는이 차트에서 데이터 (그리고 날짜 + 시간)을 얻을 수 있습니다 : 차트
문제는 출력에서 평면 라인을 제거하고 어떻게 든 데이터를 검색 할 수 없다는 것입니다. 라인을 제거하고 값을 얻을 수있는 방법이 있습니까? 내가 잘못하고있는 건가요, 아니면 그냥 멍청해서 내 코 바로 아래에있는 쉬운 해결책을 찾을 수 없나요? (나는 방금 파이썬으로 시작했기 때문에 이것이 또 다른 반복되는 질문이라면 정말 죄송합니다)
.rstrip 함수를 시도하고 for 루프로 제거하려고 시도하고 다른 데이터 유형으로 변환하려고 시도했지만 아무것도 작동하지 않는 것 같습니다.
나는 튜토리얼을 따랐고 (어떤 것이 기억 나지 않습니다) 여기에 끝났습니다.
import requests
from bs4 import BeautifulSoup
url = 'http://www.pmo.cz/portal/nadrze/cz/mereni_1_mes.htm'
res = requests.get(url)
html = res.content
soup = BeautifulSoup(html, 'html.parser')
text = soup.find_all(text=True)
output = ''
blacklist = [
'[document]',
'noscript',
'header',
'html',
'meta',
'head',
'input',
'script',
]
for t in text:
if t.parent.name not in blacklist:
output += '{} '.format(t)
print(output)
산출:
UPOZORNĚNÍ: Veškerá uváděná data jsou bez záruky.
VD Vranov
Tok:
Dyje
Koruna hráze:
353,39 [m n.m.]
Kóta přelivu:
350,10 [m n.m.]
Maximální retenční hladina:
351,45 [m n.m.]
Hladina zásobního prostoru:
348,45 [m n.m.]
Hladina stálého nadržení:
331,45 [m n.m.]
Výškový systém:
Balt p.v.
Schema:
Přejít na aktuální data (týden)
Aktuální hodnoty (25.01.2020 21:00):
Hladina vody v nádrži [m n.m.]
341,46
Objem [mil. m3]
70,49
Přítok [m 3 .s -1 ]
3,42
Odtok [m 3 .s -1 ]
2,66
Srážky [mm]
0,0
Teplota vzduchu [°C]
-1,3
줄 바꿈과 빈 문자열이 많으므로 제거해야합니다. 다음과 같이 변경해보십시오.
output = []
for t in text:
if t.parent.name not in blacklist:
target = t.strip().replace('\n','') # remove spaces and newlines
if len(target)>0: #remove empty strings
output.append(target)
for o in output:
print(o)
산출:
UPOZORNĚNÍ: Veškerá uváděná data jsou bez záruky.
VD Vranov
Tok:
Dyje
기타
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다