##// END OF EJS Templates
Add example script for extracting history from the database.
Thomas Kluyver -
Show More
@@ -0,0 +1,38 b''
1 #!/usr/bin/env python
2 """Extract a session from the IPython input history.
3
4 Usage:
5 ipython-get-history.py sessionnumber [outputfile]
6
7 If outputfile is not given, the relevant history is written to stdout. If
8 outputfile has a .py extension, the translated history (without IPython's
9 special syntax) will be extracted.
10
11 Example:
12 ./ipython-get-history.py 57 record.ipy
13
14
15 This script is a simple demonstration of HistoryAccessor. It should be possible
16 to build much more flexible and powerful tools to browse and pull from the
17 history database.
18 """
19 import sys
20 import codecs
21
22 from IPython.core.history import HistoryAccessor
23
24 session_number = int(sys.argv[1])
25 if len(sys.argv) > 2:
26 dest = open(sys.argv[2], "w")
27 raw = not sys.argv[2].endswith('.py')
28 else:
29 dest = sys.stdout
30 raw = True
31 dest.write("# coding: utf-8\n")
32
33 # Profiles other than 'default' can be specified here with a profile= argument:
34 hist = HistoryAccessor()
35
36 for session, lineno, cell in hist.get_range(session=session_number, raw=raw):
37 # To use this in Python 3, remove the .encode() here:
38 dest.write(cell.encode('utf-8') + '\n')
General Comments 0
You need to be logged in to leave comments. Login now