个人最近参加了运维方面相关工作,在工作两三天之后有了萌生制作一款集成化工具的念头,对该模块的学习大部分是为了实现对浏览器网址的集合以及对手动刷新如何实现自动刷新的一些思考,以期完成一款内置浏览器功能的集成化工具。
使用pycharm,新建项目后点击Python Packages搜索cefpython3点击下载即可
注:python3.11版本不支持cefpython3,安装前请首先确定您的python,若python3.11运行该库的相关代码会报如下图所示错误:
#从cefpython3中引入cefpython并起别名为cef
from cefpython3 import cefpython as cef
#打印cefpython的版本信息
print(cef.GetVersion())
若无任何错误,则会返回类似于如下形式的信息:
C:\Users\WY204\venv\Scripts\python.exe D:\pythonProject\爬虫\main.py
{‘version’: ‘66.1’, ‘chrome_version’: ‘66.0.3359.181’, ‘cef_version’: ‘3.3359.1774.gd49d25f’, ‘cef_api_hash_platform’: ‘6b57a640612f8d459042917ad2568b1526a70af4’, ‘cef_api_hash_universal’: ‘84263345b0b1143139aba560e5e5ed16fb6a9628’, ‘cef_commit_hash’: ‘d49d25f881b68f418e243e12801cbbb7caebb563’, ‘cef_commit_number’: ‘1774’}
进程已结束,退出代码0
# 引入相关库
from cefpython3 import cefpython as cef
import sys
# 定义主函数
def main():
#1 处理异常
sys.excepthook=cef.ExceptHook
#2 初始化cef
cef.Initialize()
#3 设置GUI视图布局
cef.CreateBrowserSync(url=cef.GetDataUrl("Hello World"))
#4 消息主循环(保证窗体不会一闪而过)
cef.MessageLoop()
#5 关闭所有相关进程
cef.Shutdown()
#6 运行主函数,可理解为接口
if __name__=='__main__':
main()
运行后结果如下图所示:
相关个人理解如下:
若是把3处url换成网址会出现什么情况呢?如下图展示情况:
cef.CreateBrowserSync(url="http://www.iqiyi.com/")
再次运行后出现了如下图所示内容: