class CSConverter(QObject): _instance = None def __new__(cls, *args, **kwargs): if cls._instance is None: cls._instance = super(CSConverter, cls).__new__(cls, *args, **kwargs) return cls._instance def __init__(self): super(CSConverter, self).__init__(QApplication.instance()) self.m_webPage = QWebPage(self) with QPyFile(':/resources/coffee-script.js') as f: self.m_webPage.mainFrame().evaluateJavaScript(f.readAll()) self.m_webPage.mainFrame().addToJavaScriptWindowObject('converter', self) def convert(self, script): self.setProperty('source', script) result = self.m_webPage.mainFrame().evaluateJavaScript('''try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; } ''') return result
def __init__(self, log, confirm_callback=None, prompt_callback=None, user_agent=USER_AGENT, enable_developer_tools=False, parent=None): QWebPage.__init__(self, parent) self.log = log self.user_agent = user_agent if user_agent else USER_AGENT self.confirm_callback = confirm_callback self.prompt_callback = prompt_callback self.setForwardUnsupportedContent(True) self.unsupportedContent.connect(self.on_unsupported_content) settings = self.settings() if enable_developer_tools: settings.setAttribute(QWebSettings.DeveloperExtrasEnabled, True) QWebSettings.enablePersistentStorage( os.path.join(cache_dir(), 'webkit-persistence')) QWebSettings.setMaximumPagesInCache(0) self.bridge_name = 'b' + uuid.uuid4().get_hex() self.mainFrame().javaScriptWindowObjectCleared.connect( self.add_window_objects) self.dom_loaded = False
class CSConverter(QObject): _instance = None def __new__(cls, *args, **kwargs): if cls._instance is None: cls._instance = super(CSConverter, cls).__new__(cls, *args, **kwargs) return cls._instance def __init__(self): super(CSConverter, self).__init__(QApplication.instance()) self.m_webPage = QWebPage(self) with QPyFile(':/resources/coffee-script.js') as f: script = f.readAll() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject( 'converter', self) def convert(self, script): self.setProperty('source', script) result = self.m_webPage.mainFrame().evaluateJavaScript('''try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; } ''') return result
def brow(self): app1 = QtGui.QApplication(sys.argv) grid = QGridLayout() browser = QWebView() global browser url_input = UrlInput(browser) requests_table = RequestsTable() manager = Manager(requests_table) page = QWebPage() page.setNetworkAccessManager(manager) browser.setPage(page) js_eval = JavaScriptEvaluator(page) # action_box = ActionInputBox(page) grid.addWidget(url_input, 1, 0) # grid.addWidget(action_box, 2, 0) grid.addWidget(browser, 3, 0) # grid.addWidget(requests_table, 4, 0) # grid.addWidget(js_eval, 5, 0) main_frame = QWidget() main_frame.setLayout(grid) main_frame.show() sys.exit(app.exec_())
class CSConverter(QObject): def __init__(self, parent=None): QObject.__init__(self, parent) self.m_webPage = QWebPage(self) converter = QFile(':/resources/coffee-script.js') if not converter.open(QFile.ReadOnly): sys.exit('CoffeeScript compiler is not available!') script = str(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject('converter', self) def convert(self, script): self.setProperty('source', script) result = self.m_webPage.mainFrame().evaluateJavaScript('''try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; }''') if result[0] is False: qWarning(result[1]) return '' return result[1]
def __init__(self, cb, dump_file): self.app = QApplication(sys.argv) QWebPage.__init__(self) self.mainFrame().loadFinished.connect(self._loadFinished) self.cb = cb self.html_dump = dump_file self.settings().setAttribute(QWebSettings.AutoLoadImages, False)
class CSConverter(QObject): def __init__(self, parent=None): QObject.__init__(self, parent) self.m_webPage = QWebPage(self) converter = QFile(":/resources/coffee-script.js") if not converter.open(QFile.ReadOnly): sys.exit("CoffeeScript compiler is not available!") script = str(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject("converter", self) def convert(self, script): self.setProperty("source", script) result = self.m_webPage.mainFrame().evaluateJavaScript( """try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; } """ ) return result
def __init__(self, url): self.app = QApplication(sys.argv) QWebPage.__init__(self) self.loadFinished.connect(self.on_page_load) time.sleep(5) self.mainFrame().load(QUrl(url)) self.app.exec_()
def __init__(self, opts, log): self.log = log QWebPage.__init__(self) settings = self.settings() settings.setFontSize(QWebSettings.DefaultFontSize, opts.pdf_default_font_size) settings.setFontSize(QWebSettings.DefaultFixedFontSize, opts.pdf_mono_font_size) settings.setFontSize(QWebSettings.MinimumLogicalFontSize, 8) settings.setFontSize(QWebSettings.MinimumFontSize, 8) std = { 'serif': opts.pdf_serif_family, 'sans': opts.pdf_sans_family, 'mono': opts.pdf_mono_family }.get(opts.pdf_standard_font, opts.pdf_serif_family) if std: settings.setFontFamily(QWebSettings.StandardFont, std) if opts.pdf_serif_family: settings.setFontFamily(QWebSettings.SerifFont, opts.pdf_serif_family) if opts.pdf_sans_family: settings.setFontFamily(QWebSettings.SansSerifFont, opts.pdf_sans_family) if opts.pdf_mono_family: settings.setFontFamily(QWebSettings.FixedFont, opts.pdf_mono_family) self.longjs_counter = 0
class CSConverter(QObject): def __init__(self, parent): QObject.__init__(self, parent) self.m_webPage = QWebPage(self) converter = QFile(":/resources/coffee-script.js") if not converter.open(QFile.ReadOnly): sys.exit("CoffeeScript compiler is not available!") script = str(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject("converter", self) def convert(self, script): self.setProperty("source", script) result = self.m_webPage.mainFrame().evaluateJavaScript( """try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; } """ ) return result @staticmethod def instance(): global CSConverterInstance # We need only one instance of the CSConverter for our whole life if CSConverterInstance is None: CSConverterInstance = CSConverter(QCoreApplication.instance()) return CSConverterInstance
def __init__(self, parent=None): QObject.__init__(self, parent) self.webPage = QWebPage(self) self.mainFrame = self.webPage.mainFrame() self.webPage.loadFinished.connect(self.render)
class CSConverter(QObject): _instance = None def __new__(cls, *args, **kwargs): if cls._instance is None: cls._instance = super(CSConverter, cls).__new__(cls, *args, **kwargs) return cls._instance def __init__(self): QObject.__init__(self, QApplication.instance()) self.m_webPage = QWebPage(self) converter = QFile(':/resources/coffee-script.js') if not converter.open(QFile.ReadOnly): sys.exit('CoffeeScript compiler is not available!') script = str(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject('converter', self) def convert(self, script): self.setProperty('source', script) result = self.m_webPage.mainFrame().evaluateJavaScript('''try { [true, this.CoffeeScript.compile(converter.source)]; } catch (error) { [false, error.message]; } ''') return result
def __init__( self, log, confirm_callback=None, prompt_callback=None, user_agent=USER_AGENT, enable_developer_tools=False, parent=None, ): QWebPage.__init__(self, parent) self.log = log self.user_agent = user_agent if user_agent else USER_AGENT self.confirm_callback = confirm_callback self.prompt_callback = prompt_callback self.setForwardUnsupportedContent(True) self.unsupportedContent.connect(self.on_unsupported_content) settings = self.settings() if enable_developer_tools: settings.setAttribute(QWebSettings.DeveloperExtrasEnabled, True) QWebSettings.enablePersistentStorage(os.path.join(cache_dir(), "webkit-persistence")) QWebSettings.setMaximumPagesInCache(0) self.bridge_name = "b" + uuid.uuid4().get_hex() self.mainFrame().javaScriptWindowObjectCleared.connect(self.add_window_objects) self.dom_loaded = False
def findText(self, q, flags): if self.hyphenatable: q = unicode(q) hyphenated_q = self.javascript( 'hyphenate_text(%s, "%s")' % (json.dumps(q, ensure_ascii=False), self.loaded_lang), typ='string') if QWebPage.findText(self, hyphenated_q, flags): return True return QWebPage.findText(self, q, flags)
def __init__(self): super(CSConverter, self).__init__(QApplication.instance()) self.m_webPage = QWebPage(self) with QPyFile(':/resources/coffee-script.js') as f: self.m_webPage.mainFrame().evaluateJavaScript(f.readAll()) self.m_webPage.mainFrame().addToJavaScriptWindowObject('converter', self)
def __init__(self, url, app): global _cookieJar, cookie self._url = url self._app = app QWebPage.__init__(self) self.networkAccessManager().setCookieJar(_cookieJar) _cookieJar.setCookiesFromUrl(QNetworkCookie.parseCookies(_cookie), QUrl(url)) self.bind()
def javaScriptAlert(self, frame, msg): # TODO ugly workaround for webkit not recognizing url changed done by # javascript if unicode(msg).startswith('navigate:'): url = unicode(msg).replace('navigate:', '') self.emit(SIGNAL("linkClicked(const QUrl &)"), QUrl(url)) else: QWebPage.javaScriptAlert(self, frame, msg)
def __init__(self): self.log = default_log QWebPage.__init__(self) self.js = None self.evaljs = self.mainFrame().evaluateJavaScript self.bridge_value = None nam = self.networkAccessManager() nam.setNetworkAccessible(nam.NotAccessible) self.setLinkDelegationPolicy(self.DelegateAllLinks)
def __init__(self, parent=None): QWebPage.__init__(self, parent) self.parent = parent self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) self.m_uploadFile = '' do_action('CustomPageInit')
def __init__(self, log): self.log = log QWebPage.__init__(self) self.js = None self.evaljs = self.mainFrame().evaluateJavaScript self.bridge_value = None nam = self.networkAccessManager() nam.setNetworkAccessible(nam.NotAccessible) self.longjs_counter = 0
def __init__(self, parent=None): global f f = open(filename, "a") f.write("WebPage init...\n") f.close() QWebPage.__init__(self, parent) f = open(filename, "a") f.write("WebPage init completed.\n") f.close()
def __init__(self, url): self.app = qtg.QApplication(sys.argv) qwp.__init__(self) signal.signal(signal.SIGINT, signal.SIG_DFL) self.connect(self, qtc.SIGNAL('loadFinished(bool)'), self._finished_loading) self.mainFrame().load(qtc.QUrl(url)) self.app.exec_()
def __init__(self, parent=None): QWebPage.__init__(self, parent) self.parent = parent self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) self.m_uploadFile = '' do_action('CustomPageInit', Bunch(locals()))
def __init__(self, parent = None): QWebPage.__init__(self, parent) self.parent = parent self.m_nextFileTag = QString() self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) if self.parent.m_verbose: self.connect(self.currentFrame(), SIGNAL('urlChanged(const QUrl&)'), self.handleFrameUrlChanged) self.connect(self, SIGNAL('linkClicked(const QUrl&)'), self.handleLinkClicked)
def __init__(self, url, eoi, click): self.app = QApplication(sys.argv) QWebPage.__init__(self) qurl = QUrl(url) # element of interest & click bool self.eoi = eoi self.click = click self.mainFrame().load(qurl) self.on_webView_loadFinished() self.app.exec()
def __init__(self, path): print("init") self.path = path self.webpage = QWebPage() self.webpage.connect(self.webpage, SIGNAL("loadStarted()"), self.loading) self.webpage.connect(self.webpage, SIGNAL("loadFinished(bool)"), self.loaded) self.__loading = False self.__loaded = False
def __init__(self, url): self.app = QApplication(sys.argv) # finding the application not # initialinzing it otherwise it must have anathor self argument QWebPage.__init__(self) # initialinzing the q webpage self.loadFinished.connect(self.on_page_load) self.mainFrame().load(QUrl(url)) self.app.exec_() def on_page_load(self): self.app.quit() # run until the page loads after loading we are done
def __init__(self, parent = None): QWebPage.__init__(self, parent) self.parent = parent self.m_nextFileTag = '' self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) if self.parent.m_verbose: self.currentFrame().urlChanged.connect(self.handleFrameUrlChanged) self.linkClicked.connect(self.handleLinkClicked)
def __init__(self, parent): QWebPage.__init__(self, parent) self.parent = parent self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) self.m_scrollPosition = QPoint() self.m_uploadFile = '' do_action('CustomPageInit')
def __init__(self, url): """ Set up the Qt application and connect signal handler. """ self.app = QApplication(sys.argv) QWebPage.__init__(self) signal.signal(signal.SIGINT, signal.SIG_DFL) self.connect(self, SIGNAL('loadFinished(bool)'), self._finished_loading) self.mainFrame().load(QUrl(url)) self.app.exec_()
def __init__(self, parent): """Copies the properties from the parent (WebkitRenderer) object, creates the required instances of QWebPage, QWebView and QMainWindow and registers some Slots. """ QObject.__init__(self) # Copy properties from parent for key, value in parent.__dict__.items(): setattr(self, key, value) # Create and connect required PyQt4 objects self._page = QWebPage() self._view = QWebView() self._view.setPage(self._page) self._window = QMainWindow() self._window.setCentralWidget(self._view) # Import QWebSettings for key, value in self.qWebSettings.iteritems(): self._page.settings().setAttribute(key, value) # Connect required event listeners self.connect( self._page, SIGNAL("loadFinished(bool)"), self._on_load_finished ) self.connect( self._page, SIGNAL("loadStarted()"), self._on_load_started ) self.connect( self._page.networkAccessManager(), SIGNAL("sslErrors(QNetworkReply *,const QList<QSslError>&)"), self._on_ssl_errors ) self.connect( self._page.networkAccessManager(), SIGNAL("finished(QNetworkReply *)"), self._on_each_reply ) # The way we will use this, it seems to be unesseccary to have # Scrollbars enabled. self._page.mainFrame().setScrollBarPolicy( Qt.Horizontal, Qt.ScrollBarAlwaysOff ) self._page.mainFrame().setScrollBarPolicy( Qt.Vertical, Qt.ScrollBarAlwaysOff ) self._page.settings().setUserStyleSheetUrl( QUrl("data:text/css,html,body{overflow-y:hidden !important;}") ) # Show this widget self._window.show()
class Thumbnailer(QObject): finished = pyqtSignal() def __init__(self, parent=None): QObject.__init__(self, parent) self.webPage = QWebPage(self) self.mainFrame = self.webPage.mainFrame() self.webPage.loadFinished.connect(self.render) def load(self, url): qurl = QUrl(url) self.webPage.mainFrame().load(qurl) def render(self): self.webPage.setViewportSize(self.webPage.mainFrame().contentsSize()) image = QImage(self.webPage.viewportSize(), QImage.Format_ARGB32) painter = QPainter() painter.begin(image) self.webPage.mainFrame().render(painter) painter.end() image.save('thumbnail.png') self.finished.emit()
def __init__(self, shortcuts, parent=None, debug_javascript=False): QWebPage.__init__(self, parent) self.setObjectName("py_bridge") self.in_paged_mode = False # Use this to pass arbitrary JSON encodable objects between python and # javascript. In python get/set the value as: self.bridge_value. In # javascript, get/set the value as: py_bridge.value self.bridge_value = None self.first_load = True self.debug_javascript = debug_javascript self.anchor_positions = {} self.index_anchors = set() self.current_language = None self.loaded_javascript = False self.js_loader = JavaScriptLoader( dynamic_coffeescript=self.debug_javascript) self.in_fullscreen_mode = False self.setLinkDelegationPolicy(self.DelegateAllLinks) self.scroll_marks = [] self.shortcuts = shortcuts pal = self.palette() pal.setBrush(QPalette.Background, QColor(0xee, 0xee, 0xee)) self.setPalette(pal) self.page_position = PagePosition(self) settings = self.settings() # Fonts load_builtin_fonts() self.all_viewer_plugins = tuple(all_viewer_plugins()) for pl in self.all_viewer_plugins: pl.load_fonts() opts = config().parse() self.set_font_settings(opts) # Security settings.setAttribute(QWebSettings.JavaEnabled, False) settings.setAttribute(QWebSettings.PluginsEnabled, False) settings.setAttribute(QWebSettings.JavascriptCanOpenWindows, False) settings.setAttribute(QWebSettings.JavascriptCanAccessClipboard, False) # Miscellaneous settings.setAttribute(QWebSettings.LinksIncludedInFocusChain, True) settings.setAttribute(QWebSettings.DeveloperExtrasEnabled, True) self.set_user_stylesheet(opts) self.misc_config(opts) # Load javascript self.mainFrame().javaScriptWindowObjectCleared.connect( self.add_window_objects) self.turn_off_internal_scrollbars()
def documentation_load_finished(self, ok): url = self.ui.webView.url() url_path = str(url.path()) url_fragment = str(url.fragment()).replace('library.zip.appfuncs.', 'appfuncs.') #ExeStdOut(url_path, url_fragment) #print ("url", url_path) #print ("fragment", url_fragment) if url_path.endswith("docs/appfuncs.html"): #print (self.controller.function_docs, os.path.isfile(self.controller.function_docs)) #with open(self.controller.function_docs) as fid: # doc_html = str(fid.read(), 'utf-8') doc_html = self.html_source() if url_fragment.endswith(".run"): url_fragment = url_fragment[:-4] start_tag = '<dt id="%s">' % url_fragment end_tag = '<dt id=' scriptFunction_name = url_fragment.split(".")[-2] try: method_html = start_tag + doc_html.split(start_tag)[1].split(end_tag)[0] for a, b in [('<tt class="descname">run</tt>', '<tt class="descname">%s</tt>' % scriptFunction_name), ('href="_modules', 'href="source.html?#_modules'), #('href="#appfuncs', 'href="doc.html?#appfuncs'), #('</th>', '</th></tr>\n<tr>'), ("Parameters :", "Parameters:"), ("Return :", "Return:"), ]: method_html = method_html.replace(a, b) except IndexError: method_html = "Documentation not found" self.doc_contents = method_html elif url_path.endswith("docs/source.html"): source_html_path, self.anchor = str(url.fragment()).split("#") with open("%s/%s" % (os.path.dirname(self.controller.function_docs), source_html_path)) as fid: source_html = to_str(fid.read()) source_html = source_html.replace('<a class="viewcode-back" href="../../../ScriptFunctions.html', '<a class="viewcode-back" href="appfuncs.html') from PyQt4.QtWebKit import QWebPage p = QWebPage() f = p.mainFrame() f.setHtml(source_html) self.doc_contents = f.findFirstElement('div.body').toInnerXml() if self.anchor: self.ui.webView.page().mainFrame().scrollToAnchor(self.anchor) with open(self.doc_path + "tmp.html", 'w') as fid: fid.write(self.html_source())
def __init__(self, url): # self.app = QApplication.instance() # if self.app is None: self.app = QApplication(sys.argv) QWebPage.__init__(self) self.loadFinished.connect(self.on_page_load) print("Loading") self.mainFrame().load(QUrl(url)) print("Executing") self.app.exec_() print("Executed")
def __init__(self, parent = None): QObject.__init__(self, parent) self.m_webPage = QWebPage(self) converter = QFile(':/resources/coffee-script.js') converter.open(QFile.ReadOnly) script = QString.fromUtf8(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject('converter', self)
def __init__(self, shortcuts, parent=None, debug_javascript=False): QWebPage.__init__(self, parent) self.setObjectName("py_bridge") self.in_paged_mode = False # Use this to pass arbitrary JSON encodable objects between python and # javascript. In python get/set the value as: self.bridge_value. In # javascript, get/set the value as: py_bridge.value self.bridge_value = None self.first_load = True self.debug_javascript = debug_javascript self.anchor_positions = {} self.index_anchors = set() self.current_language = None self.loaded_javascript = False self.js_loader = JavaScriptLoader( dynamic_coffeescript=self.debug_javascript) self.in_fullscreen_mode = False self.setLinkDelegationPolicy(self.DelegateAllLinks) self.scroll_marks = [] self.shortcuts = shortcuts pal = self.palette() pal.setBrush(QPalette.Background, QColor(0xee, 0xee, 0xee)) self.setPalette(pal) self.page_position = PagePosition(self) settings = self.settings() # Fonts self.all_viewer_plugins = tuple(all_viewer_plugins()) for pl in self.all_viewer_plugins: pl.load_fonts() opts = config().parse() self.set_font_settings(opts) # Security settings.setAttribute(QWebSettings.JavaEnabled, False) settings.setAttribute(QWebSettings.PluginsEnabled, False) settings.setAttribute(QWebSettings.JavascriptCanOpenWindows, False) settings.setAttribute(QWebSettings.JavascriptCanAccessClipboard, False) # Miscellaneous settings.setAttribute(QWebSettings.LinksIncludedInFocusChain, True) settings.setAttribute(QWebSettings.DeveloperExtrasEnabled, True) self.set_user_stylesheet(opts) self.misc_config(opts) # Load javascript self.mainFrame().javaScriptWindowObjectCleared.connect( self.add_window_objects) self.turn_off_internal_scrollbars()
def __init__(self, parent=None): QWebPage.__init__(self, parent) self.parent = parent self.m_nextFileTag = "" self.m_userAgent = QWebPage.userAgentForUrl(self, QUrl()) if self.parent.m_verbose: self.currentFrame().urlChanged.connect(self.handleFrameUrlChanged) self.linkClicked.connect(self.handleLinkClicked) do_action("WebPageInit", Bunch(locals()))
def __init__(self, urls, cb): self.app = QApplication(sys.argv) QWebPage.__init__(self) s = self.settings() s.setAttribute(QWebSettings.AutoLoadImages, False) s.setAttribute(QWebSettings.LinksIncludedInFocusChain, False) s.clearMemoryCaches() self.loadFinished.connect(self._loadFinished) self.urls = urls self.cb = cb self.crawl() self.app.exec_()
def importBookmarks(self): """ Public method to import bookmarks. """ supportedFormats = QStringList() \ << self.trUtf8("XBEL bookmarks").append(" (*.xbel *.xml)") \ << self.trUtf8("HTML Netscape bookmarks").append(" (*.html *.htm)") fileName = KQFileDialog.getOpenFileName(\ None, self.trUtf8("Import Bookmarks"), QString(), supportedFormats.join(";;"), None) if fileName.isEmpty(): return reader = XbelReader() importRootNode = None if fileName.endsWith(".html"): inFile = QFile(fileName) inFile.open(QIODevice.ReadOnly) if inFile.openMode == QIODevice.NotOpen: KQMessageBox.warning(None, self.trUtf8("Import Bookmarks"), self.trUtf8("""Error opening bookmarks file <b>%1</b>.""")\ .arg(fileName)) return webpage = QWebPage() webpage.mainFrame().setHtml(QString(inFile.readAll())) result = webpage.mainFrame().evaluateJavaScript(extract_js).toByteArray() buffer_ = QBuffer(result) buffer_.open(QIODevice.ReadOnly) importRootNode = reader.read(buffer_) else: importRootNode = reader.read(fileName) if reader.error() != QXmlStreamReader.NoError: KQMessageBox.warning(None, self.trUtf8("Import Bookmarks"), self.trUtf8("""Error when importing bookmarks on line %1, column %2:\n""" """%3""")\ .arg(reader.lineNumber())\ .arg(reader.columnNumber())\ .arg(reader.errorString())) return importRootNode.setType(BookmarkNode.Folder) importRootNode.title = self.trUtf8("Imported %1")\ .arg(QDate.currentDate().toString(Qt.SystemLocaleShortDate)) self.addBookmark(self.menu(), importRootNode)
def __init__(self, parent=None): QObject.__init__(self, parent) self.m_webPage = QWebPage(self) converter = QFile(':/resources/coffee-script.js') if not converter.open(QFile.ReadOnly): sys.exit('CoffeeScript compiler is not available!') script = str(converter.readAll()) converter.close() self.m_webPage.mainFrame().evaluateJavaScript(script) self.m_webPage.mainFrame().addToJavaScriptWindowObject( 'converter', self)
def __init__(self, argv): self.app = app = QApplication(argv) self.browser = QWebView() requests_table = RequestsTable() manager = KontenaManager(self, requests_table) page = QWebPage() page.setNetworkAccessManager(manager) self.browser.setPage(page) grid = QGridLayout() grid.addWidget(self.browser, 0, 0) # grid.addWidget(requests_table, 4, 0) self.window = QWidget() self.window.setLayout(grid)
def __init__(self, source, target, width): self.width = int(width) self.target = target #self.app = QApplication(sys.argv) signal.signal(signal.SIGINT, signal.SIG_DFL) self.qwPage = QWebPage() size = QSize() size.setWidth(int(width)) self.qwPage.setViewportSize(size) self.qwPage.connect(self.qwPage, SIGNAL("loadFinished(bool)"), self.onLoadFinished) self.qwPage.mainFrame().load(QUrl(source))
def __init__(self): self.application = app wp = QWebPage() wp.setForwardUnsupportedContent(True) wp.loadFinished.connect(self._on_load_finished) wp.loadStarted.connect(self._on_load_started) self.webpage = wp self.webframe = wp.mainFrame() self.headers = [] self._load_timeout = -1 self._load_success = False self.setSettings()
def __init__(self): self.application = app self.logger = Logger.getLogger() wp = QWebPage() wp.setForwardUnsupportedContent(True) wp.loadFinished.connect(self._on_load_finished) wp.loadStarted.connect(self._on_load_started) self.webpage = wp self.webframe = wp.mainFrame() self.headers = [] self._load_timeout = -1 self._load_success = False self.setSettings()
def __init__(self, url, app): global _cookieJar, cookie self._url = url self._app = app QWebPage.__init__(self) self.networkAccessManager().setCookieJar(_cookieJar) _cookieJar.setCookiesFromUrl(QNetworkCookie.parseCookies(_cookie), QUrl(url)) self.bind() self._app.exec_() self.user_agent_for_url = user_agent self.js_alert = alert self.js_prompt = alert self.js_confirm = alert self.js_console_message = console_message
def __init__(self, url: str): self.app = QApplication(sys.argv) QWebPage.__init__(self) # noinspection PyUnresolvedReferences self.loadFinished.connect(self.on_page_load) self._error = None # Setup timeout timeout_value = 10 # seconds self.timeout_timer = QTimer() self.timeout_timer.timeout.connect(self._request_timed_out) self.timeout_timer.start(timeout_value * 1000) # Start the timer # load the page, timer running self.mainFrame().load(QUrl(url)) self.app.exec_()
def load_species_names_list(self): if os.path.isfile('%s/species_names.json' % run_name): print "Loading cached species names..." sn = cjson.decode(open('%s/species_names.json' % run_name).read()) self.allSpecies = sn['allSpecies'] self.species1Names = sn['species1Names'] self.species2Names = sn['species2Names'] else: print "Fetching species names..." self.webpage = QWebPage() self.webpage.loadFinished.connect(self.process_organism_list) self.webpage.mainFrame().load( QUrl('http://roundup.hms.harvard.edu/retrieve/')) while self.allSpecies == None: time.sleep(.05) appInstance.processEvents()
def __init__(self, parent = None): """ Constructor @param parent parent widget of this window (QWidget) """ QWebPage.__init__(self, parent) self.__lastRequest = None self.__lastRequestType = QWebPage.NavigationTypeOther self.__proxy = NetworkAccessManagerProxy(self) self.__proxy.setWebPage(self) self.__proxy.setPrimaryNetworkAccessManager( Helpviewer.HelpWindow.HelpWindow.networkAccessManager()) self.setNetworkAccessManager(self.__proxy)
def find(self, forwards=True): text = unicode(self.search_text.text()).strip() flags = QWebPage.FindFlags(0) if forwards else QWebPage.FindBackward d = self.dest_list if d.count() == 1: flags |= QWebPage.FindWrapsAroundDocument if not self.view.findText(text, flags) and text: if d.count() == 1: return error_dialog(self, _('No match found'), _('No match found for: %s') % text, show=True) delta = 1 if forwards else -1 current = unicode(d.currentItem().data(Qt.DisplayRole).toString()) next_index = (d.currentRow() + delta) % d.count() next = unicode(d.item(next_index).data(Qt.DisplayRole).toString()) msg = '<p>' + _( 'No matches for %(text)s found in the current file [%(current)s].' ' Do you want to search in the %(which)s file [%(next)s]?') msg = msg % dict(text=text, current=current, next=next, which=_('next') if forwards else _('previous')) if question_dialog(self, _('No match found'), msg): self.pending_search = self.find_next if forwards else self.find_previous d.setCurrentRow(next_index)
def __init__(self, parent): """ Copies the properties from the parent (WebkitRenderer) object, creates the required instances of QWebPage, QWebView and QMainWindow and registers some Slots. """ QObject.__init__(self) # Copy properties from parent for key, value in parent.__dict__.items(): setattr(self, key, value) # Create and connect required PyQt4 objects self._page = QWebPage() self._view = QWebView() self._view.setPage(self._page) self._window = QMainWindow() self._window.setCentralWidget(self._view) # Import QWebSettings for key, value in self.qWebSettings.iteritems(): self._page.settings().setAttribute(key, value) # Connect required event listeners self.connect(self._page, SIGNAL("loadFinished(bool)"), self._on_load_finished) self.connect(self._page, SIGNAL("loadStarted()"), self._on_load_started) self.connect(self._page.networkAccessManager(), SIGNAL("sslErrors(QNetworkReply *,const QList<QSslError>&)"), self._on_ssl_errors) # The way we will use this, it seems to be unesseccary to have Scrollbars enabled self._page.mainFrame().setScrollBarPolicy(Qt.Horizontal, Qt.ScrollBarAlwaysOff) self._page.mainFrame().setScrollBarPolicy(Qt.Vertical, Qt.ScrollBarAlwaysOff) self._page.settings().setUserStyleSheetUrl(QUrl("data:text/css,html,body{overflow-y:hidden !important;}")) # Show this widget self._window.show()
def __init__(self, browser, parent): "Inicia una página web, el padre debe ser el widget que lo contiene" QWebPage.__init__(self, parent) self.__browser = browser # variables para crear frame self.__get_frame_condition = Condition(Lock()) self.__get_frame_result = None self.connect(self, QtCore.SIGNAL('get_frame_signal(QWebFrame *)'), self, QtCore.SLOT('__get_frame_slot(QWebFrame *)') ) self.__main_frame = None self.__user_agent = None self.disable_alert = False "Hace que se deshabilite el alert de javascript"
def __init__(self, autojq=True, timeoutsec=120): QWebPage.__init__(self) self.autojq = autojq self.timeoutsec = timeoutsec self.loop = QEventLoop() self.waiter = Waiter() # фиксенные кеш и менеджер self.cache = Cache() self.manager = Manager() self.cache.setCacheDirectory(CACHE_PATH) self.manager.setCache(self.cache) self.setNetworkAccessManager(self.manager) log.info('init(): autojq: %s, timeoutsec: %s, cache: %s' % colorize((autojq, timeoutsec, CACHE_PATH)))