%pylab inline
import time
from collections import defaultdict
import json
import pandas as pd
import os
import sys
stdout = sys.stdout
reload(sys)
sys.setdefaultencoding('utf-8')
sys.stdout = stdout
import numpy as np
import requests
import json
import datetime
from textblob import TextBlob
Populating the interactive namespace from numpy and matplotlib
with open("seed_creation_date.json","r") as f:
sci_aw_dict=json.load(f,encoding="utf-8")
print len(sci_dict)
262
with open("baseline_creation_date.json","r") as f:
sci_nonaw_dict=json.load(f,encoding="utf-8")
print len(sci_nonaw_dict)
276
exintro - parse first paragraph
#pip install pywikibot
#create file user-config.py
#
## -*- coding: utf-8 -*-
#family = 'wikipedia'
#mylang = 'en'
#usernames['wikipedia']['en'] = u'RevisionsBot'
#
#
#
#https://doc.wikimedia.org/pywikibot/api_ref/pywikibot.html#module-pywikibot.page
import pywikibot
site = pywikibot.Site("en", "wikipedia")
list_rev=[]
erorr_list=[]
j=1
for sci_name in sci_nonaw_dict.keys():
name=sci_name.split("/")[-1]
print j,name
try:
page = pywikibot.Page(site, name)
revs = page.revisions(content=True)
for i in revs:
temp_dict=i.__dict__
temp_dict["article"]=name
list_rev.append(temp_dict)
except:
print "Error when access:", name
erorr_list.append(name)
j+=1
1 G%C3%A1bor_A._Somorjai 2 Elias_James_Corey 3 Albert_Meyers 4 Dan_Boneh 5 Shlomo_Shamai 6 Xavier_Gabaix 7 Marianne_Bertrand 8 Malcolm_Green_(chemist) 9 Subir_Sachdev 10 Jing_Li_(chemist) 11 Steven_Kaplan_(economist) 12 John_Perdew 13 Arun_Majumdar 14 Giuseppe_Mingione 15 Menachem_Elimelech 16 Juan_Mart%C3%ADn_Maldacena 17 Theodore_H._Geballe 18 K%C3%A1ri_Stef%C3%A1nsson 19 Ian_Ford 20 Stephen_R._Bloom 21 Andrei_Shleifer 22 Ralph_Weissleder 23 Axel_D._Becke 24 John_Robertson_(physicist) 25 Matja%C5%BE_Perc 26 Ariel_Rubinstein 27 Stephen_Vargo 28 Michael_Boehnke 29 Oded_Schramm 30 Michael_I._Jordan 31 Sergio_Ferrara 32 Wayne_Fuller 33 Rudolf_Grimm 34 Joseph_Wang 35 Immanuel_Bloch 36 Andrew_Bernard 37 Cumrun_Vafa 38 George_Loewenstein 39 Dimitri_Nanopoulos 40 Joann_E._Manson Error when access: Joann_E._Manson 41 Robert_J._Birgeneau 42 Pauline_van_den_Driessche 43 Murray_Brennan 44 Ralph_Nuzzo 45 Donal_Bradley 46 Paul_Ridker 47 Ulrike_Malmendier 48 Allen_Steere 49 Edward_Ott 50 Alexander_Zamolodchikov 51 Helmut_Schwarz 52 Olivier_Blanchard 53 Martin_Eichenbaum 54 %C5%BDeljko_Reiner 55 Jean-Michel_Sav%C3%A9ant 56 Ross_Levine 57 Reinhart_Ahlrichs 58 Alex_Zettl 59 Sendhil_Mullainathan 60 Vincenzo_Balzani 61 Valarie_Zeithaml 62 Robert_West_(chemist) 63 Rolf_Apweiler 64 Bruce_D._Walker 65 Peter_Gavin_Hall 66 Yang_Huanming 67 Tomas_H%C3%B6kfelt 68 Michael_F._Lappert 69 Elza_Erkip 70 Guido_Imbens 71 G%C3%A9rald_Bastard 72 Michele_Parrinello 73 Kendall_Houk 74 Irun_Cohen 75 Michael_L._Klein 76 Robert_Peter_Gale 77 Barry_Everitt 78 Takuzo_Aida 79 Didier_Astruc 80 Peter_Knight_(scientist) 81 Alan_Aderem 82 Birger_Wernerfelt 83 C._N._R._Rao 84 Witold_Nazarewicz 85 Masaru_Tomita 86 Ruedi_Aebersold 87 Sharon_Ann_Hunt 88 John_A._List 89 Stuart_A._Rice 90 William_H._Miller_(chemistry) 91 Sergey_Fomin 92 Philip_Kim 93 Keith_Olive 94 Heng_Li 95 Robert_Tibshirani 96 Robert_H._Crabtree 97 Bradley_Efron 98 Michael_L._Tushman 99 Tasawar_Hayat 100 Stephen_J._Lippard
print erorr_list
[u'Joann_E._Manson']
df=pd.DataFrame(list_rev)
df.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 24163 entries, 0 to 24162 Data columns (total 12 columns): _content_model 24163 non-null object _parent_id 24163 non-null int64 _sha1 24132 non-null object anon 24163 non-null bool article 24163 non-null object comment 24163 non-null object minor 24163 non-null bool revid 24163 non-null int64 rollbacktoken 0 non-null object text 24132 non-null object timestamp 24163 non-null datetime64[ns] user 24163 non-null object dtypes: bool(2), datetime64[ns](1), int64(2), object(7) memory usage: 1.9+ MB
df.text=df.text.apply(lambda x: " ".join(x.split()) if (x==x)&(type(x)==unicode) else None)
df.to_csv("baseline_revisions.csv",sep="\t")
df["text_len"]=df.text.apply(lambda x: len(TextBlob(x).words) if (x==x)&(type(x)==unicode) else None)
df.head(2)
_content_model | _parent_id | _sha1 | anon | article | comment | minor | revid | rollbacktoken | text | timestamp | user | text_len | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | wikitext | 807253069 | a0d1ed8b580892cc7dabf3d770bc69d60bed5fc7 | False | G%C3%A1bor_A._Somorjai | Grammar correction | True | 811195141 | None | {{Infobox person |name = Gábor A. Somorjai |im... | 2017-11-20 02:30:05 | HandsomeMrToad | 1593.0 |
1 | wikitext | 797794813 | d0c871038a54950f633bb93b5f73ed1a820a7a58 | False | G%C3%A1bor_A._Somorjai | Rescuing 3 sources and tagging 0 as dead. #IAB... | False | 807253069 | None | {{Infobox person |name = Gábor A. Somorjai |im... | 2017-10-26 21:09:27 | InternetArchiveBot | 1594.0 |
df.to_csv("baseline_revisions.csv",sep="\t")
list_rev2=[]
erorr_list2=[]
j=1
for sci_name in sci_aw_dict.keys():
name=sci_name.split("/")[-1]
print j,name
try:
page = pywikibot.Page(site, name)
revs = page.revisions(content=True)
for i in revs:
temp_dict=i.__dict__
temp_dict["article"]=name
list_rev2.append(temp_dict)
except:
print "Error when access:", name
erorr_list2.append(name)
j+=1
df2=pd.DataFrame(list_rev2)
df2.info()
df2.text=df2.text.apply(lambda x: " ".join(x.split()) if (x==x)&(type(x)==unicode) else None)
df2.to_csv("seed_revisions.csv",sep="\t")
1 Michael_Grunstein 2 Bernd_Giese 3 John_Tate 4 Nobuhiro_Kiyotaki 5 Shinya_Yamanaka 6 Richard_Hynes 7 Mikhail_Leonidovich_Gromov 8 Charles_L._Bennett 9 David_Julius 10 C%C3%A9dric_Villani 11 Nancy_A._Moran 12 Peter_Howitt_(economist) 13 Steven_Van_Slyke 14 Hideo_Hosono 15 Barbara_Liskov 16 Ching_W._Tang 17 Charles_Sawyers 18 Thomas_Ebbesen 19 Tu_Youyou 20 Irwin_M._Jacobs 21 Martin_Hairer 22 Jeffrey_M._Friedman 23 Leslie_Lamport 24 Ferenc_Krausz 25 William_Nordhaus 26 Paul_Corkum 27 John_G._Thompson 28 Jack_W._Szostak 29 Bruce_Beutler 30 John_Milnor 31 Matthew_Rabin 32 Charles_F._Manski 33 M._Hashem_Pesaran 34 Robert_Lefkowitz 35 Endre_Szemer%C3%A9di 36 Patrick_O._Brown 37 Harold_Demsetz 38 Sam_Peltzman 39 Aziz_Sancar 40 James_Rothman 41 Anne_Osborn_Krueger 42 Alan_Krueger 43 Tony_Atkinson 44 John_B._Goodenough 45 Seiji_Ogawa 46 Peter_C._B._Phillips 47 David_R._Smith 48 Charles_L._Kane 49 Ernest_McCulloch 50 Eric_H._Davidson 51 Jacques_Tits 52 Shizuo_Akira 53 John_A._List 54 Paul_Alivisatos 55 Victor_Ambros 56 Takaaki_Kajita 57 Harald_zur_Hausen 58 Martin_Weitzman 59 Saul_Perlmutter 60 Isamu_Akasaki 61 Jordi_Gal%C3%AD 62 George_E._Smith 63 Geoffrey_Marcy 64 William_Baumol 65 Vera_Rubin 66 Silvio_Micali 67 Makoto_Kobayashi_(physicist) 68 Eric_Betzig 69 Gordon_Tullock 70 Galen_D._Stucky 71 Lars_Peter_Hansen 72 Andre_Geim 73 Manjul_Bhargava 74 Arthur_B._McDonald 75 Jacques_Miller 76 Charles_Lee_(scientist) 77 Robert_S._Langer 78 Alvin_E._Roth 79 Pierre_Deligne 80 Thomas_A._Steitz 81 Erkki_Ruoslahti 82 Robert_Tjian 83 Emmanuelle_Charpentier 84 Akira_Fujishima 85 Randy_Schekman 86 Shimon_Sakaguchi 87 Morris_Chang 88 William_Wootters 89 Whitfield_Diffie 90 Stephen_Ross_(economist) 91 Peidong_Yang 92 Robert_J._Shiller 93 Jules_A._Hoffmann 94 Andrew_Viterbi 95 Rory_Collins 96 John_L._Hennessy 97 Fran%C3%A7ois_Englert 98 Elon_Lindenstrauss 99 Joshua_Angrist 100 Stephen_J._Lippard 101 Carol_W._Greider 102 David_Card 103 Ryoo_Ryong 104 May-Britt_Moser 105 David_Forbes_Hendry 106 Peter_Zoller 107 Philippe_Aghion 108 Leslie_Valiant 109 Brian_Druker 110 M_Stanley_Whittingham 111 Charles_M._Lieber 112 Louis_E._Brus 113 Stephen_W._Scherer 114 Martin_Feldstein 115 Krzysztof_Matyjaszewski 116 Hideo_Ohno 117 Mark_Gertler_(economist) 118 Alain_Aspect 119 Martin_Karplus 120 Alberto_Alesina 121 John_Clauser 122 Deborah_S._Jin 123 Shafi_Goldwasser 124 Willard_Boyle 125 Michael_Berry_(physicist) 126 Mildred_Dresselhaus 127 Yakir_Aharonov 128 Hiroshi_Amano 129 Dennis_Slamon 130 Serge_Haroche 131 Gary_Ruvkun 132 Michael_Levitt 133 Yoshinori_Ohsumi 134 Eugene_Fama 135 Elinor_Ostrom 136 Martin_Hellman 137 Shuji_Nakamura 138 Jeffrey_I._Gordon 139 David_J._Wineland 140 Paul_Krugman 141 Eli_Yablonovitch 142 Joseph_Altman 143 Brian_Schmidt 144 Dale_T._Mortensen 145 Robert_Edwards_(physiologist) 146 Aharon_Razin 147 Leigh_Canham 148 Anthony_Pawson 149 Lloyd_Shapley 150 Roger_Penrose 151 Douglas_Diamond 152 Yoichiro_Nambu 153 John_Forbes_Nash_Jr. 154 Halbert_White 155 Jacqueline_Barton 156 Michael_Stonebraker 157 B._Jayant_Baliga 158 Peter_Higgs 159 Judea_Pearl 160 John_Hardman_Moore 161 Michael_Gr%C3%A4tzel 162 Anton_Zeilinger 163 Jean_Fr%C3%A9chet 164 John_Pendry 165 Charles_David_Allis 166 Paul_L._Modrich 167 Louis_Nirenberg 168 Thomas_C._S%C3%BCdhof 169 Peter_Walter 170 Adam_Riess 171 Thomas_J._Sargent 172 Satoshi_%C5%8Cmura 173 Oliver_E._Williamson 174 Bruce_Ames 175 Charles_K._Kao 176 Stanislav_Smirnov 177 David_Spergel 178 Ada_Yonath 179 Brian_Kobilka 180 Ralph_M._Steinman 181 Arieh_Warshel 182 John_Gurdon 183 Howard_Cedar 184 Kazutoshi_Mori 185 Douglas_L._Coleman 186 Masatoshi_Takeichi 187 Stephen_E._Harris 188 Jerry_A._Hausman 189 Angus_Deaton 190 Chad_Mirkin 191 Israel_Kirzner 192 Maryam_Mirzakhani 193 Akira_Suzuki_(chemist) 194 Tomas_Lindahl 195 Charles_T._Kresge 196 Nadrian_Seeman 197 Jean_Tirole 198 Lene_Hau 199 Anthony_R._Hunter 200 Winslow_Briggs 201 Lyman_Page 202 Carolyn_R._Bertozzi 203 Richard_Posner 204 Ernst_Fehr 205 Yoshinori_Tokura 206 William_E._Moerner 207 Omar_M._Yaghi 208 Robert_G._Roeder 209 Osamu_Shimomura 210 Laurens_W._Molenkamp 211 Martin_Chalfie 212 William_C._Campbell_(scientist) 213 Richard_F._Heck 214 Fran%C3%A7oise_Barr%C3%A9-Sinoussi 215 Graeme_Moad 216 James_Till 217 Charles_P._Thacker 218 G._David_Tilman 219 Ei-ichi_Negishi 220 Edvard_Moser 221 Gordon_Moore 222 Nicholas_Lydon 223 Stefan_Hell 224 Ramamoorthy_Ramesh 225 Roger_Y._Tsien 226 Elizabeth_Blackburn 227 Didier_Queloz 228 Peter_Diamond 229 Sajeev_John 230 Joseph_Felsenstein 231 Mark_Granovetter 232 Shoucheng_Zhang 233 Charles_H._Bennett_(computer_scientist) 234 Peter_Crane 235 Christopher_A._Pissarides 236 Adrian_Bird 237 Artur_Avila 238 Gilles_Brassard 239 Richard_Blundell 240 John_O%27Keefe_(neuroscientist) 241 Venkatraman_Ramakrishnan 242 Karl_Barry_Sharpless 243 Gary_Schuster 244 Michel_Mayor 245 Michael_Wigler 246 Luc_Montagnier 247 James_E._Darnell 248 Allen_J._Bard 249 Robert_H._Dennard 250 Dan_Shechtman 251 Konstantin_Novoselov 252 Graham_Hutchings 253 Jennifer_Doudna 254 Armen_Alchian 255 Kevin_M._Murphy 256 Ng%C3%B4_B%E1%BA%A3o_Ch%C3%A2u 257 Juan_Ignacio_Cirac_Sasturain 258 Richard_Peto 259 Zhong_Lin_Wang 260 Christopher_A._Sims 261 Yakov_Sinai 262 Toshihide_Maskawa <class 'pandas.core.frame.DataFrame'> RangeIndex: 63003 entries, 0 to 63002 Data columns (total 12 columns): _content_model 63003 non-null object _parent_id 63003 non-null int64 _sha1 62984 non-null object anon 63003 non-null bool article 63003 non-null object comment 63003 non-null object minor 63003 non-null bool revid 63003 non-null int64 rollbacktoken 0 non-null object text 62984 non-null object timestamp 63003 non-null datetime64[ns] user 63003 non-null object dtypes: bool(2), datetime64[ns](1), int64(2), object(7) memory usage: 4.9+ MB
print erorr_list2
[]
df2["text_len"]=df2.text.apply(lambda x: len(TextBlob(x).words) if (x==x)&(type(x)==unicode) else None)
df2.to_csv("seed_revisions.csv",sep="\t")
#pip install mediawiki-parser
#https://github.com/peter17/mediawiki-parser
from mediawiki_parser.preprocessor import make_parser
from mediawiki_parser.text import make_parser
templates = {}
preprocessor = make_parser(templates)
parser = make_parser()
df["text_clean"]=df.text.apply(lambda x: parser.parse(preprocessor.parse(x).leaves()).value.strip())
--------------------------------------------------------------------------- KeyboardInterrupt Traceback (most recent call last) <ipython-input-156-e730490741f6> in <module>() 26 27 ---> 28 df["text_clean"]=df.text.apply(lambda x: parser.parse(preprocessor.parse(" ".join(x.split())).leaves()).value.strip()) C:\Anaconda2\lib\site-packages\pandas\core\series.pyc in apply(self, func, convert_dtype, args, **kwds) 2549 else: 2550 values = self.asobject -> 2551 mapped = lib.map_infer(values, f, convert=convert_dtype) 2552 2553 if len(mapped) and isinstance(mapped[0], Series): pandas/_libs/src/inference.pyx in pandas._libs.lib.map_infer() <ipython-input-156-e730490741f6> in <lambda>(x) 26 27 ---> 28 df["text_clean"]=df.text.apply(lambda x: parser.parse(preprocessor.parse(" ".join(x.split())).leaves()).value.strip()) C:\Anaconda2\lib\site-packages\pijnu\library\parser.pyc in parse(self, source) 172 "or invoke one of its pattern attributes." 173 raise AttributeError(message) --> 174 return self.topPattern.parse(source) 175 176 def parseTest(self, source): C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in parse(self, source) 254 255 # parse --> 256 result = self._memoCheck(source, 0) 257 if Pattern.DO_STATS: 258 Pattern.stats.stop_time = time() C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 907 # case success: append node to global value sequence 908 try: --> 909 node = pattern._memoCheck(source, pos) 910 pos = node.end 911 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 825 # choice pattern transfos, avoid useless nesting. 826 try: --> 827 node = pattern._memoCheck(source, pos) 828 # apply possible transformations stored on self 829 # (in addition to the ones on wrapped pattern) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 825 # choice pattern transfos, avoid useless nesting. 826 try: --> 827 node = pattern._memoCheck(source, pos) 828 # apply possible transformations stored on self 829 # (in addition to the ones on wrapped pattern) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 825 # choice pattern transfos, avoid useless nesting. 826 try: --> 827 node = pattern._memoCheck(source, pos) 828 # apply possible transformations stored on self 829 # (in addition to the ones on wrapped pattern) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 907 # case success: append node to global value sequence 908 try: --> 909 node = pattern._memoCheck(source, pos) 910 pos = node.end 911 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 907 # case success: append node to global value sequence 908 try: --> 909 node = pattern._memoCheck(source, pos) 910 pos = node.end 911 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1605 # simply check through wrapped pattern 1606 try: -> 1607 node = self.pattern._memoCheck(source, pos) 1608 return node 1609 except PijnuError as e: C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 825 # choice pattern transfos, avoid useless nesting. 826 try: --> 827 node = pattern._memoCheck(source, pos) 828 # apply possible transformations stored on self 829 # (in addition to the ones on wrapped pattern) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 907 # case success: append node to global value sequence 908 try: --> 909 node = pattern._memoCheck(source, pos) 910 pos = node.end 911 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 825 # choice pattern transfos, avoid useless nesting. 826 try: --> 827 node = pattern._memoCheck(source, pos) 828 # apply possible transformations stored on self 829 # (in addition to the ones on wrapped pattern) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1246 # case success: append node to child sequence 1247 try: -> 1248 node = self.pattern._memoCheck(source, pos) 1249 pos = node.end 1250 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 907 # case success: append node to global value sequence 908 try: --> 909 node = pattern._memoCheck(source, pos) 910 pos = node.end 911 childNodes.append(node) C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _memoCheck(self, source, pos) 509 if Pattern.DO_STATS: Pattern.stats.checks += 1 510 try: --> 511 result = self._realCheck(source, pos) 512 except Invalidation as e: 513 result = e C:\Anaconda2\lib\site-packages\pijnu\library\pattern.pyc in _realCheck(self, source, pos) 1046 # -- return nil node, keep pos unchanged 1047 except PijnuError as e: -> 1048 return Node(self, Node.NIL, pos,pos,source) 1049 1050 def _message(self): C:\Anaconda2\lib\site-packages\pijnu\library\node.pyc in __init__(self, pattern, value, start, end, source) 174 self.pattern = pattern # this node's generator 175 self.form = value # initial value form -- case doActions --> 176 self.defineKind() # LEAF / BRANCH 177 178 # source C:\Anaconda2\lib\site-packages\pijnu\library\node.pyc in defineKind(self) 198 # -- basically a string 199 else: --> 200 self.kind = Node.LEAF 201 202 def cleanBranch(self): KeyboardInterrupt: