首页 文章 精选 留言 我的

精选列表

搜索[字符串模板],共10010篇文章
优秀的个人博客,低调大师

pyqt5的runJavaScript 使用模板

runJavaScript 的说明 QWebEnginePage 有一个 runJavaScript 方法,支持回调函数。 使用方法1 只运行JavaScript,没有回调 def run_js(self): js_string = ''' alert("hello,world!"); ''' self.webview.page().runJavaScript(js_string) 使用方法2 运行JavaScript,并存在回调 def run_js2(self): js_string = ''' function myFunction() { return document.body.scrollWidth; } myFunction(); ''' self.webview.page().runJavaScript(js_string , self.js_callback) # 回调函数 def js_callback(self,result): print(result) QMessageBox.information(self, "提示", str(result)) 完整代码,如下所示。 【如下代码,完全复制,直接运行,即可使用】 import sys from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtWebEngineWidgets import QWebEngineView ################################################ #######创建主窗口 ################################################ class MainWindow(QMainWindow): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.setWindowTitle('My Browser') self.showMaximized() #####放入WebEngineView self.webview = WebEngineView() self.webview.load(QUrl("https://www.baidu.com")) self.setCentralWidget(self.webview) #####web页面加载完毕,调用函数 self.webview.page().loadFinished.connect(self.run_js) self.webview.page().loadFinished.connect(self.run_js2) ########运行js脚本,没有回调######## def run_js(self): js_string = ''' alert("hello,world!"); ''' self.webview.page().runJavaScript(js_string) ########运行js脚本,有回调######## def run_js2(self): js_string = ''' function myFunction() { return document.body.scrollWidth; } myFunction(); ''' self.webview.page().runJavaScript(js_string , self.js_callback) # 回调函数 def js_callback(self,result): print(result) QMessageBox.information(self, "提示", str(result)) ################################################ #######创建浏览器 ################################################ class WebEngineView(QWebEngineView): windowList = [] # 重写createwindow() def createWindow(self, QWebEnginePage_WebWindowType): new_webview = WebEngineView() new_window = MainWindow() new_window.setCentralWidget(new_webview) #new_window.show() self.windowList.append(new_window) #注:没有这句会崩溃 return new_webview ################################################ #######程序入门 ################################################ if __name__ == "__main__": app = QApplication(sys.argv) w = MainWindow() w.show() sys.exit(app.exec_()) 本文如有帮助,敬请留言鼓励。 本文如有错误,敬请留言改进。

优秀的个人博客,低调大师

用OpenStack Heat模板设置私有IaaS

业务流程是Iaas云的重要组成部分,可以帮助管理员更容易的进行部署。 诸如OpenStack的Iaas云应该是动态的。如果管理员需要手动创建云结点、实例和网络,那就完全没有利用云计算的灵活性。 像大多数被认为是OpenStack云的基本功能,流程作为独立组件包含在OpenStack中,被称作为Heat。如果你选择了开源的 OpenStack云架构,预计大部分功能会以这种方式实现。Heat被设计为创造人类和机器可访问的服务,管理云中的基础设施与应用程序完整生命周期。 Heat通过模版实现业务流程引擎。 将物理数据中心转换为OpenStack云,需要物理到虚拟的迁移计划和工具。Heat在理论上是可以使用的,但不是以业务流程引擎为预期目的。Heat 模版最适合部署相似的服务器。他们允许IT实现从旧数据中心到软件定义数据中心的过渡迁移:这通常意味着全新的架构,可以享受云架构带来的灵活性。 OpenStack Heat模版实际上与AWS CloudFormation模版格式的完全兼容,OpenStack数据中心内的实例都经过特定的配置。只要AWS和OpenStack实例的功能兼容,混合公有-私有云迁移是可以实现的。但OpenStack也不是100%能够兼容AWS的。 Heat模版在一个文本文件中描述了需要的内容,方面人员进行读写(见下述范例)。选项包括不同类型的基础设施资源,如服务器、浮动IP地址、卷、用户等等。模版同样可以管理这些资源之间的关系,还可以通过自动化实现复杂配置。 Heat并不只是创建资源;它管理整个资源生命周期。要做到这点,必须紧密与DevOps自动化服务集成,如Puppet与Chef,实现管理不同软件组件的状态。 AsampleOpenStackHeattemplate. heat_template_version:2013-05-23 description:Simpletemplatetodeployasinglecomputeinstancewithparameters parameters: key_name: type:string label:KeyName description:Nameofkey-pairtobeusedforcomputeinstance image_id: type:string label:ImageID description:Imagetobeusedforcomputeinstance instance_type: type:string label:InstanceType description:Typeofinstance(flavor)tobeused resources: my_instance: type:OS::Nova::Server properties: key_name:{get_param:key_name} image:{get_param:image_id} flavor:{get_param:instance_type} 范例中部署了一个虚拟机实例。Heat模版由两部分组成。一部分定义了参数,包括key_name、image、和instance_type。第二部分定义了通过该模版管理的资源,本例中为my_instance。为了管理这个资源,需要在一开始定义三个被成为属性的参数。在这里get_param语句定义了所有需要的属性数值。 这个OpenStack Heat是可用的,但对于需要定义成百上千OpenStack实例的管理员来说,并不会太有效果。参数值要求一个接着一个,最后实现大规模部署,这也是云计算资源通常的目标,是一个缓慢的过程。为了使其更快,需要在模版中使用环境文件。这些文件里包括了所有可用参数的数值集。 OpenStack Heat友好度如何? 虽然Heat很容易通过自动化工具实现有效和简单管理,但却不是特别方便用户使用。管理员不喜欢手动处理含有大量需求配置为ASCII文件。他们还有许多不同的选择来让云业务流程管理更轻松。 云业务流程工具目的在于更轻松的管理大规模云。许多公司都试图填补国内云管理空白,包括Cloudyn、Dell和RightScale。 是否还能够从OpenStack社区获得更高的期望呢?可能不会。虽然不是很直观,Heat确实是提供了有效的模版工具来管理云部署。这是一个后端功能,任何用户都可以打造一个灵活的前端接口来管理它。 前端的一个问题在于要如何开发才能让云业务流程更容易:为了更高效,前端工具必须能够访问OpenStack Heat模版中的相同的参数和配置选项,意味着这些解决方案也不见得会简单多少。 本文作者:陈德文 来源:51CTO

优秀的个人博客,低调大师

MongoDB 安全 checklist 及最优配置模板

云数据库 MongoDB 版 基于飞天分布式系统和高性能存储,提供三节点副本集的高可用架构,容灾切换,故障迁移完全透明化。并提供专业的数据库在线扩容、备份回滚、性能优化等解决方案。 了解更多 最近 MongoDB “赎金事件”闹得沸沸扬扬,不少公网上裸奔的 MongoDB 中招,有兴趣的同学可以看下耗子叔写的从 MONGODB “赎金事件” 看安全问题,中招的主要原因还是因为用户的安全意识比较薄弱,部署的 MongoDB 完全没有任何安全防护,可以通过公网访问,并且没有开启鉴权。 MongoDB 官方文档在安全方面做了很多总结,出了一个MongoDB Security Checklist,但从这次中招的规模来看,大部分用户并没有认真看过这个文档,这次事件也刚好是一个数据库安全科普的好机会,希望所有的数据库用户都要重视自己的数据安全。 Mon

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册