"""Print HTML context around a keyword. Usage: python ctx.py [window] """ import urllib.request import sys import re UA = 'Mozilla/5.0 (compatible; paperbot/1.0)' url = sys.argv[1] kw = sys.argv[2] win = int(sys.argv[3]) if len(sys.argv) > 3 else 600 req = urllib.request.Request(url, headers={'User-Agent': UA}) t = urllib.request.urlopen(req, timeout=40).read().decode('utf-8', 'ignore') idx = 0 n = 0 while True: i = t.find(kw, idx) if i < 0: break n += 1 print('--- occurrence %d at %d ---' % (n, i)) print(t[max(0, i - win):i + win]) idx = i + 1 if n >= 5: break print('occurrences found:', n)