def run_local(self, url): log.ThugLogging.set_url(url) log.ThugOpts.local = True log.HTTPSession = HTTPSession.HTTPSession() html = open(url, 'r').read() doc = w3c.parseString(html) window = Window.Window('about:blank', doc, personality = log.ThugOpts.useragent) window.open() self.run(window)
def window_from_file(self, data, url, offline_content=dict(), max_len=200): log.ThugLogging.set_url(url) log.ThugOpts.local = True log.ThugOpts.max_len = max_len log.HTTPSession = HTTPSession.HTTPSession() doc = w3c.parseString(data) window = Window.Window('about:blank', doc, personality=log.ThugOpts.useragent, offline_content=offline_content) window.open() return window
def run_remote(self, url): scheme = urlparse.urlparse(url).scheme if not scheme or not scheme.startswith('http'): url = 'http://%s' % (url, ) log.ThugLogging.set_url(url) log.HTTPSession = HTTPSession.HTTPSession() doc = w3c.parseString('') window = Window.Window(log.ThugOpts.referer, doc, personality = log.ThugOpts.useragent) window = window.open(url) if window: self.run(window)
def run_local(self, url): log.ThugLogging.set_url(url) log.ThugOpts.local = True log.HTTPSession = HTTPSession.HTTPSession() content = open(url, 'r').read() extension = os.path.splitext(url) if len(extension) > 1 and extension[1].lower() in ('.js'): html = tostring(E.HTML(E.BODY(E.SCRIPT(content)))) else: html = content doc = w3c.parseString(html) window = Window.Window('about:blank', doc, personality = log.ThugOpts.useragent) window.open() self.run(window)