用win7 python3 selenium3写的脚本打包成EXE后在其他电脑上重新配置环境变量还是不能打开浏览器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用win7 python3 selenium3写的脚本打包成EXE后在其他电脑上重新配置环境变量还是不能打开浏览器相关的知识,希望对你有一定的参考价值。

用win7 64位 python3 selenium3写的脚本用pyinstaller打包成EXE后在自己电脑上能运行。放到其他电脑上重新配置环境变量还是不能打开浏览器(Firefox)。有没有解决方案?最好可以不用人工配置环境变量!
万分感谢!

用pyinstaller打包一个tkinter的exe程序

今天用pyinstaller打了个小tk程序,整理了一些小问题的解决

打包单个exe文件

-F 选项可以打出一个exe文件,默认是 -D,意思是打成一个文件夹。

pyinstaller -F TestDataGen.py12

打出的桌面程序去掉命令行黑框

-w 选项可以打桌面程序,去掉命令行黑框

pyinstaller -F -w TestDataGen.py12

修改程序默认图标

-i 可以设置图标路径,将图标放在根目录:

pyinstaller -F -w -i gen.ico TestDataGen.py12

如下:

修改程序左上角的’tk’图标

# ...省略部分root = Tk(className='数据生成器')
root.iconbitmap('gen.ico')  # 加图标app = App(root)
root.mainloop()12345

如下: 

替换’tk’图标后,打包的exe执行失败

原因是图标没有打进去,或者打包成文件夹,或者把图标转化成base64数据:

# 这段程序可将图标gen.ico转换成icon.py文件里的base64数据import base64
open_icon = open("gen.ico","rb")
b64str = base64.b64encode(open_icon.read())
open_icon.close()
write_data = "img = '%s'" % b64str
f = open("icon.py","w+")
f.write(write_data)
f.close()123456789

修改主程序:

# ...省略部分import base64from icon import imgimport os# 将import进来的icon.py里的数据转换成临时文件tmp.ico,作为图标tmp = open("tmp.ico","wb+")
tmp.write(base64.b64decode(img))
tmp.close()

root = Tk(className='数据生成器')
app = App(root)
root.iconbitmap('tmp.ico')  # 加图标os.remove("tmp.ico")  # 删掉临时文件root.mainloop()123456789101112131415

再执行打包命令

pyinstaller -F -w -i gen.ico TestDataGen.py

参考技术A 前来考古 同问

python模块selenium使用

python模块selenium使用

我使用的是python2.7

可以直接用pip install 安装

 

这里记录一下,我使用这个模块编写爬虫的学习

 

做爬虫,我之前都是使用requests 模块写的,如果简单的爬虫,用这个模块确实可以,但是,如果我们要爬取一些比较复杂的网站,如果直接用这个模块写的话,那么就要匹配很多数据,也比较容易出错,或者说是没有那么方便(写是可以写的,只是时间的问题,如果有简单的,肯定是用简单的,当然无论复杂或简单都是学一下)。如果使用requests模块的话,要考虑更多的东西,但是也可以让你更了解整个过程

 

言归正传:

 

还是拿之前写的发斗鱼弹幕的代码来讲解(只是简单记录一下,没有详细讲代码)

 

在安装好上面的模块之后,还要下载一个驱动,因为我们是要打开浏览器,然后用代码实现鼠标的点击和输入

 

 

我这里使用的是Chrome浏览器,所以要下载这个浏览器的一个驱动(我称那个东东叫驱动...

 

先看一下Chrome浏览器的版本

 

 

我用的是最新版的

可以到这里下载驱动

http://chromedriver.chromium.org/ 

需要FQ才能访问

 

我的是最新版,所以直接下载最新的就可以,建议直接将chrome浏览器更新到最新的,然后直接下载最新版就可以了

 

 

下载好之后,将那个压缩包解压到一个文件夹里面(我是直接解压到Chrome的安装路径上面了)

 

 

 

然后将这个路径加入到环境变量里面

 

 

然后再启动代码就不会提示没有驱动了

 

Selenium的基本使用

先加载一个浏览器

 

 

然后再请求一个网址

 

 

运行代码就会自动打开一个新的Chrome浏览器,然后跳转到指定的网址

 

最好在代码写一个不断循环的,

不然就会一跳到这个网址,然后就关闭了

因为代码运行完就会停止掉代码

 

基本使用就是那些了,还有很多功能,等用到了,再继续记录了

 

下面写一下怎样不打开界面

因为我们做爬虫,我们希望代码执行,然后输出一系列的数据,如果执行代码,弹出一个浏览器,这样子有点不好,不但占内存,也影响效率

  

上面的代码就是有界面和没有界面的配置

 

有时候我们需要设置一个请求头:

 

上面只是简单地写一下,记录一下,如果想结合代码学习的话,可以到GitHub看我的代码

GitHub地址:https://github.com/niechaojun/Douyu_Barrage

以上是关于用win7 python3 selenium3写的脚本打包成EXE后在其他电脑上重新配置环境变量还是不能打开浏览器的主要内容,如果未能解决你的问题,请参考以下文章

Selenium3+Python3_15:数据驱动ddt+excel

Selenium3与Python3实战 Web自动化测试框架

Selenium 环境安装

Selenium3 + Python3自动化测试系列十——调用JavaScript代码

selenium3+python3环境搭建

selenium3+python3