次の XML ドキュメントがあります。
<data>
<point address="com.example.www" time="Jul 30, 2013 10:02:56 PM" protocol="http" type="2" body="404 Not Found" name="Example Site" />
<point address="com.example.test" time="Jul 29, 2013 07:45:03 AM" protocol="https" type="2" body="This is a test" name="Test.example" />
.......
</data>
次の Python コードを使用しました。
import libxml2
def ReadValue(pn, dt):
return [attr.content for attr in input_file.xpathEval("/data/point[@protocol='%s']/@%s" % (pn, dt))]
protocol = ["http", "https"]
data_type = ["body", "type", "time", "name"]
for i in protocol:
for j in data_type:
print ReadValue(i, j)
exit()
ReadValue
200k を超えるタグを解析する場合、それがボトルネックであると思われます。実行が非常に遅いため、実行中にスクリプトを Ctrl-C することさえできません。上記のコードを使用するよりも優れた実装はありますか?
ありがとう