0

line.rfind を使用して、HTML コードの特定の行を解析しています。たとえば、これは私が解析している html コードの行です。

<strong class="temp">79<span>&deg;</span></strong><span class="low"><span>Lo</span> 56<span>&deg;</span></span>

これは、行を分割して (この場合) '79' を引き出すために使用するコードです。

position0 = line.rfind('{}'.format(date1.strftime("%a")))
if position0 > 0 :
        self.high0 = lines[line_number + 4].split('<span>')[0].split('">')[-1]

>=94 かつ <=37 の場合にのみ、その数値を引き出す必要があります。この基準を満たさない場合は、何も起こらないでください。何か案は?前もって感謝します!

4

2 に答える 2

0

正規表現を使用して高温を取得すると思います。長いHtmlドキュメントを解析していた場合は、それかbeautifulsoupのどちらかです。以下は、OPにリストされているパターンを繰り返す文字列からすべての高温を取得する必要があります。

import re

s = '<strong class="temp">79<span>&deg;</span></strong><span class="low"><span>Lo</span> 56<span>&deg;</span></span>'
p = re.compile(r'>(?P<high>\d+)<span>\&deg')
matches = p.finditer(s)
for match in matches:
    print match.group('high')
于 2013-09-11T04:49:22.063 に答える
0

私は次のことを行うことでこれを達成することができました:

if int(c.high0) >= 34:
            plt.text(x, y, int(c.high0), fontsize=7, fontweight='bold')
于 2013-09-14T00:57:35.303 に答える