Paste #22

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env python
#
# list_dumped_data.py

import sys
import sqlite3

sys.path.insert(0, '/usr/local/google_appengine')
sys.path.insert(1, '/usr/local/google_appengine/lib/yaml/lib')

from google.appengine.datastore import entity_pb
from google.appengine.api import datastore


def list_entities(filename):
  db_conn = sqlite3.connect(filename)
  cursor = db_conn.cursor()
  cursor.execute('select id, value from result')
  for entity_id, value in cursor:
    entity_proto = entity_pb.EntityProto(contents=str(value))
    entity = datastore.Entity._FromPb(entity_proto)
    print entity
  db_conn.close()

if __name__ == '__main__':
  if len(sys.argv) < 2:
    sys.stderr.write("You need to specify filename\n")
    sys.exit(-1)
  list_entities(sys.argv[1])