mac/win使用pyinstaller打包app/exe文件,活着执行脚本,双击运行

🌸 踩坑记录

  • python环境最好使用虚拟环境,推荐使用conda管理,并且若本地有python环境,不要使用和 本地环境版本 相同的虚拟环境
    • 这里踩坑较多,已经记不清楚注意点
      • 虚拟环境
      • python版本不要和本地环境一样
  • mac/win只能打包相应的程序,mac对应app,win对应exe,也可使用终端/窗口还能看见日志。
  • mac压缩后传递可能出现软件损坏/开发者未受信任情况
    • 使用终端运行 sudo spctl --master-disable
    • 系统设置、安全与隐私、允许来自任何来源,勾选
  • 若有路径读取请使用os.path.dirname(sys.argv[0]),并且最好放在同一个文件夹下
# 重点这行
path = os.path.dirname(sys.argv[0])
# 拼接路径
f = os.path.join(path, 'url.txt')
# 按行读取,形成列表
websites = open(f).readlines()
  • 记录打包命令
"""
常用参数 含义
-i 或 -icon 生成icon
-F 创建一个绑定的可执行文件
-w 使用窗口,无控制台
-C 使用控制台,无窗口
-D 创建一个包含可执行文件的单文件夹包(默认情况下)
-n 文件名 mac pyinstaller -F -w -i favicon.ico trustCertificates.py
win pyinstaller -F --onefile -i favicon.ico trustCertificates.py
"""

在这里插入图片描述
在这里插入图片描述

🌸 源码

import os
import sysfrom selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager"""
常用参数 含义
-i 或 -icon 生成icon
-F 创建一个绑定的可执行文件
-w 使用窗口,无控制台
-C 使用控制台,无窗口
-D 创建一个包含可执行文件的单文件夹包(默认情况下)
-n 文件名 mac pyinstaller -F -w -i favicon.ico trustCertificates.py
win pyinstaller -F --onefile -i favicon.ico trustCertificates.py
"""chrome_options = Options()
chrome_options.add_argument('--ignore-certificate-errors')
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])# 创建Chrome驱动程序
chrome_driver_path = 'path_to_chromedriver'
service = Service(chrome_driver_path)
driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()), options=chrome_options)# 网站列表
path = os.path.dirname(sys.argv[0])
f = os.path.join(path, 'url.txt')websites = open(f).readlines()# 循环访问每个网站并信任证书
for website in websites[1:]:try:driver.get(website)# 等待直到页面加载完成WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.TAG_NAME, 'body')))print(f"成功信任证书: {website}")except Exception as e:raise eprint(f"无法信任证书: {website}, 错误信息: {str(e)}")driver.get(websites[0])while True:pass

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/804908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nodejs安装及环境配置

Node.js安装和环境配置在不同操作系统(如Windows、macOS、Linux)上会有所不同。以下是一些基本的步骤和指南来帮助你在这些常见的操作系统上安装Node.js及进行环境配置。 ### Windows #### 安装Node.js 1. **下载安装包**:访问Node.js官方…

清理垃圾软件哪个好?电脑清理优化4种方法

在数字时代,我们的电脑经常会被各种软件、程序和文件所占据,其中不乏一些无用甚至有害的垃圾软件。这些软件不仅占用了大量的存储空间,还可能拖慢电脑的运行速度,甚至威胁到我们的信息安全。因此,定期清理和优化电脑变…

紧急备考全攻略,如何短期通过PMP考试?

今年身边有很多同事朋友都要考PMP,而我属于这些人里”第一个吃螃蟹“的人,一次拿下5A,下面分享一下我自己备考PMP的经验。 我是根据自己的学习计划复习的,不能说这些方法适合所有人,但对备考的伙伴们来说,…

【考研复试上机】C++STL

文章目录 vector初始化及赋值方式vector容器内元素的访问常用函数 setset容器内元素的访问:set常用函数:multisetunordered_set stringstring常用函数: mapmap容器内元素的访问:map常用函数:multimapunordered_map que…

颜色识别

颜色识别 计算机视觉中的颜色识别是指计算机系统能够自动识别图像或视频中的不同颜色,以便进行分析、分类、跟踪和其他视觉任务。 颜色是物体的一个重要属性,它提供了有关对象的重要信息。 颜色识别在各种应用中都有重要作用,包括工业自动…

分布式文件系统

引言: GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。 一、 GlusterFS 概述 1.1 GlusterFS简介 GlusterFS 是…

跳动的♥心

代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style…

git实现代码版本控制

一、在github新建一个仓库 二、在本地执行以下代码 git init git add . git commit -m "first commit" git branch -M main git remote add origin gitgithub.com:thekingofjumpshoot/blog.git git push -u origin main 代码解析 然后就上传到github上了 三、第二…

Java 8 中Stream流的基本概念和用法介绍

1. 理解Java 8中Stream流的概念 Java 8中引入的Stream流是对集合对象进行各种操作的高级抽象&#xff0c;可以让开发者更加便捷、高效地处理数据。在本章节中&#xff0c;我们将深入探讨Java 8中Stream流的基本概念&#xff0c;包括Stream流的定义、与集合的关系以及使用Strea…

qt实现实时抓取串口数据,并对数据做解密处理

效果&#xff1a; 1.实时抓取串口数据&#xff0c;并对串口数据做解密&#xff0c;解密后显示在QTextEdit上。 2.对显示的内容做特殊关键字标记处理&#xff0c;比如对出现的Error关键字标红 高亮另一个版本 3.对显示的明文进行查询&#xff0c;类似编辑文件中的CtrlF 4.对串口…

Mac环境简化RSA密钥生成命令

文章目录 正常RSA密钥对生成操作命令 openssl genrsa -out rsa_private_key.pem 2048 openssl rsa -pubout -in rsa_private_key.pem -out rsa_public_key.pem通过添加环境变量来简化RSA密钥对生成操作 设置环境变量.zshrc或.bash_profile # 使用zsh终端 vim ~/.zshrc将下面sh…

如何通过代码混淆绕过苹果机审,解决APP被拒问题

目录 iOS代码混淆 功能分析 实现流程 类名修改 方法名修改 生成垃圾代码 替换png等静态资源MD5 info.plist文件添加垃圾字段 功能分析 实现流程 类名修改 方法名修改 生成垃圾代码 替换png等静态资源MD5 info.plist文件添加垃圾字段 混淆前后对比 iOS代码混淆 …

南京航空航天大学-考研科目-513测试技术综合 高分整理内容资料-01-单片机原理及应用分层教程-单片机有关常识部分

系列文章目录 高分整理内容资料-01-单片机原理及应用分层教程-单片机有关常识部分 文章目录 系列文章目录前言总结 前言 单片机的基础内容繁杂&#xff0c;有很多同学基础不是很好&#xff0c;对一些细节也没有很好的把握。非常推荐大家去学习一下b站上的哈工大 单片机原理及…

开通抖音小店后下一步要干嘛?这些准备比选品更重要!新手必看!

哈喽~我是电商月月 很多入驻完抖音小店的新手朋友总以为&#xff0c;入驻完抖音小店后&#xff0c;下一步就是去选品 其实并不是&#xff01;选品确实很重要&#xff0c;但前期这几个细节没做好&#xff0c;是会直接影响店铺的整体发展的 废话不多说&#xff0c;直接分享给你…

2024年6月PMP报名已开始!项目经理抓紧啦!

根据《2024年6月1日PMI认证考试报名通知》可知&#xff0c;2024年6月PMP考试安排在6月1日举行&#xff0c;那报名入口什么时候开通呢&#xff1f;2024年6月PMP考试分批报名&#xff0c;从4月10日10:00开启报名&#xff0c;4月18日16:00截止报名。 第一批报名城市&#xff1a;2…

Linux入门攻坚——18、SELinux、Bash脚本编程续

SELinux——Secure Enhanced Linux&#xff08;安全加强的Linux&#xff09;&#xff0c;工作于Linux内核中。 SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源&#xff08;最小权限原则&#xff09;。采用委任式存取控制&#xff0c;是在进行程序、文件等细节权…

Dockfile相关

一、Dockerfile能干什么? 能在里面自定义应用的各种环境配置,来构建镜像;它是一种实现途径。 1.1Dockerfile文件组成 1.基础镜像信息 FROM 2.维护者信息 LABEL 3.镜像操作指令 ENV ADD COPY RUN 4.启动时执行指令 CMD ENTRYPOINT 1.2Dockerfile多阶段构建 一个镜像的构…

python批量修改替换cad图纸文本,土木狗可以有

civilpy&#xff1a;python进行AutoCAD绘图的两个库&#xff0c;土木狗可以有3 赞同 0 评论文章​编辑 civilpy&#xff1a;python进行AutoCAD绘图批量打印&#xff0c;土木狗可以有2 赞同 2 评论文章​编辑 # 导入所需库 from pyautocad import Autocad, APoint import ma…

LeetCode 94 二叉树的中序遍历

题目描述 二叉树的中序遍历 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2]示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[]示例 3&#xff1a; 输入…

hive管理之ctl方式

hive管理之ctl方式 hivehive --service clictl命令行的命令 #清屏 Ctrl L #或者 &#xff01; clear #查看数据仓库中的表 show tabls; #查看数据仓库中的内置函数 show functions;#查看表的结构 desc表名 #查看hdfs上的文件 dfs -ls 目录 #执行操作系统的命令 &#xff01;命令…