仅限于学习用,不足之处,请多多指教。
由于喊车学长写网页自动翻页小工具的朋友是个文职工作者,电脑没有可以运行python代码的环境,所以车学长把代码打包成了.exe可执行文件,这个过程也想和大家分享一下。
(网页自动翻页小工具制作分享:https://mp.csdn.net/mp_blog/creation/editor/124705171)
平时习惯了在ubuntu运行代码,所以编写小工具的时候也是用ubuntu,以下操作也是在ubuntu下进行的。
安装打包工具遇到的问题
python打包工具用的是pyinstaller,安装指令为 pip install pyinstaller,在安装过程过程中遇到了报错信息“ ImportError: No module named 'setuptools.build_meta' ”,在一番查找之后,原来是环境里的pip版本和setuptools版本低了,成功安装pyinstaller的前提是pip版本不能低于19.0.2,setuptools的版本不能低于40.8.0。
解决安装pyinstaller遇到的问题
学长首先用指令 python -m pip install --upgrade pip 去升级pip,升级完之后用指令 pip -V查看pip的版本,发现版本还是没变,于是指定pip的版本再升级了一次pip,指令用的是 python -m pip install pip==20.3.4,这次升级成功。
升级setuptools的时候也一样,首先用了指令 pip install --upgrade setuptools,升级完成后查看setuptools的版本发现升级失败,于是用 pip install --upgrade setuptools==40.8.0 再次升级,升级成功。
升级完pip和setuptools之后,再运行 pip install pytinstaller 就成功安装了打包工具。
打包python代码并执行
在存放小工具的文件夹中打开终端,运行指令 pyinstaller -F xx.py,就可以在新生成的dist文件夹找到打包好的可执行文件xx。双击运行xx,网页可以自动打开,并按照代码设计的顺序在规定时间内自动翻页,说明成功了一半。为什么是成功了一半呢,因为不要忘记了朋友是文职工作者,环境不一样。
车学长忘了在ubuntu下生成的可执行文件无法在windows下运行,所以把上面生成的可执行文件xx拉到windows下执行时碰壁了,但问题不大。学长立马按下win+r,输入cmd唤出了windows的终端,给windows也装上了pyinstaller,运行指令 pyinstaller -F xxxxxxx.py,在源码的目录下生成新的dist文件夹,xx.exe静静地躺在里面。
双击运行xx.exe,屏幕里出现一个黑框,火狐网页自动打开,网页根据代码的设置自动翻页,说明还是很成功的。学长立马把小工具发给朋友,让朋友试试(朋友的电脑已经安装火狐浏览器),但是朋友说出现一个黑框闪了以下就消失了,看来是环境有问题。
学长回想了一下整个过程,感觉是代码里涉及到的火狐驱动geckodriver.exe的问题,也就是代码的第一句(如下图)。因为在学长的windows环境里,geckodriver.exe放在python安装路径的Scripts里,并且添加到了环境变量中。于是学长从环境变量中删除了了Scripts,把xx.exe单独地放在一个文件夹并运行,复现了朋友遇到的问题。
怎么才能在不更改环境变量、操作简便的情况下,让xx.exe变成傻瓜式小工具呢?学长尝试把xx.exe和geckodriver.exe放到同一个文件夹,运行xx.exe,欧耶!成功!最后学长把xx.exe和geckodriver.exe一起打包发给了朋友。
本贴仅供内部学习研究使用,请勿将其用作任何实际用途,否则后果自负,作者将不为其承担任何法律责任



