Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python2
- #Get source with scripts run using gtk webkit
- import sys, gtk, webkit, warnings
- warnings.filterwarnings('ignore')
- agent = 'Mozilla/5.0 (Windows NT 6.2; x86_64; rv:48.0) Gecko/20100101 Firefox/50.0'
- class WebView(webkit.WebView):
- def get_html(self):
- self.execute_script('oldtitle=document.title;'
- 'document.title=document.documentElement.innerHTML;')
- html = self.get_main_frame().get_title()
- self.execute_script('document.title=oldtitle;')
- return html
- class Source_W_Scripts(gtk.Window):
- def __init__(self, url, file):
- gtk.Window.__init__(self)
- self.url = url
- self.file = file
- def get_it(self):
- view = WebView()
- settings = view.get_settings()
- settings.set_property('user-agent', (agent))
- view.open(self.url)
- view.connect('load-finished', self.finished_loading)
- self.add(view)
- gtk.main()
- def finished_loading(self, view, frame):
- with open(self.file, 'w') as f:
- f.write(view.get_html())
- gtk.main_quit()
- def main():
- url = raw_input('Enter/Paste url for source: ')
- out_file = raw_input('Enter output file name: ')
- dloader = Source_W_Scripts(url, out_file)
- dloader.get_it()
- if __name__ == '__main__':
- main()
Add Comment
Please, Sign In to add comment