环境文件。下载地址:https://pan.baidu.com/s/1Z032mpMYuc-8j3mvzGAlDQ  提取码:fi9x 

注意:此过程适用于 64 位 Windows 7 系统,32 位只能作参考

1.安装 Python 3.5.4 (Python 开发环境)

1.1使用命令行窗口,检查是否已经安装过 Python,命令操作如下,未安装过会看到如下提示:

如果安装过python,请卸载python,重新安装并进行相应配置(注意:卸载  不是直接将python文件删除)

1.2双击python-3.5.4-amd64.exe文件

如果直接点击 Install Now 则会安装默认路径进行安装,安装后需要到这个路径才能找到 Python 的目录但建议指定目录安装,
建议安装到 C 盘下,同时勾选上 Add Python 3.5 to PATH点击 Customize installation,进行自定义安装,如果点快了没有勾
选 添加到PATH,可以继续安装,后面有说明如何手动添加到 PATH

勾选上 Install for all users,同时指定安装路径为:C:\Python35,然后点击 Install 

出现下页面表示安装成功了,如果安装过程报错,则直接往后拉,看后面异常情况的分析: 

如果没有勾选自动添加到 Path 中,命令行中运行 python 命令时会报错:如:python 命令找不到.......
解决方案:在系统变量 Path 中添加 Python 的安装路径:
C:\Python35\Scripts\;C:\Python35\;
注意:我是安装在 C 盘下的,大家可能跟我不一样
 
Python 安装成功,用命令行检查,效果如下:

 

异常情况一:
如果安装完成后,检查 Python 版本或打开 Python 的 shell 窗口报错,则需要安装基础环境所需的 C++相关程序,
按以下步骤进行:
1)先删除 C:\Windows\SysWOW64 目录下的 api-ms-win-crt-runtime-l1-1-0.dll 文件

 

2)从 分享的环境文件中找到 vc_redist.x64.exe 文件 复制到本机并运行,安装完成
会要求重启,重启电脑即可
3)系统重启过程中,会自动配置环境,同时会重新生成api-ms-win-crt-runtime-l1-1-0.dll 文件

异常情况二:

安装程序时,若提示下面的内容,则说明 dll 版本不一致
1)先删除 C:\Windows\SysWOW64 目录下的 api-ms-win-crt-runtime-l1-1-0.dll 文件
2)从分享的环境文件中找到 vc_redist.x64.exe 文件
复制到本机并运行,安装完成会要求重启,重启电脑即可
3)系统重启过程中,会自动配置环境,同时会重新生成api-ms-win-crt-runtime-l1-1-0.dll 文件
4)配置完成后,控制面板中卸载 Python,然后重装 Python,必须保证 Python安装完成后 Scripts 中是完整的
 
注意:后续步骤是针对 Selenium 自动化环境所需内容,如果 Eclipse+Python 之前已经弄好的情况下,可以略过
 
2.安装 JDK 1.8(Java 开发环境)
双击运行:jdk-8u151-windows-x64.exe 文件,点击 下一步。
指定 JDK 安装路径(默认即可),点击 下一步
然后程序会自动安装,跳转到下图页面时,注意切换安装页面:
安装完成,点击关闭 即可。
安装是否成功,命令行中 输入 java -version 查询,能查到 java 的版本即表示成功!

 

注意:必须是 Java 1.8+,必须是 64 位的(后面 Selenium 和 Eclipse 环境需要)
由于 jdk 1.8 安装完后,默认是自动添加到 Path 系统变量中,所以上述命令可以直接使用。
我建议大家进行一次手动配置,这样可以熟悉开发环境的配置操作,这是非常基础和常用的操作。
 
3.安装 Python 版的 Selenium 依赖包
在线版(不建议,版本更新可能跟教学环境有差异):直接命令行使用命令:pip install -U selenium
离线版(推荐):先下载依赖包 selenium-3.7.0.tar.gz(分享的环境文件中有)然后在 C 盘下解压该依赖包

命令行进到解压目录下,然后 python setup.py install 

检查 Selenium 是否安装成功,检查 Python35\Lib\site-packages 目录中是否有:
 

异常情况:

如果安装过程出现下面 setuptools 的报错,证明 python 未正确安装,需重新安装
正常情况下 Python 安装目录对应下图目录是存在的才行

4.安装好相应版本的浏览器(跟驱动对应)

安装前注意事项
无论是火狐浏览器还是谷歌浏览器,目前都存在会自动更新的问题,而我们学习及实践自动
化时一般只会使用相对比较固定的版本。所以在安装后,我们需要及时关闭自动更新功能,
可在安装时先断网再进行安装,参考操作如下(实在不懂,拔网线...);浏览器自行选择安装,
推荐使用谷歌浏览器(各版本下载地址:https://dl.lancdn.com/landian/software/chrome/m/?utm_sources=DownPageBot)
 
5.将相关驱动程序添加到 Path 变量中
最简单的方式就是将所有的驱动文件(.exe 文件,不是压缩包,也不能有目录)丢到 Python的安装目录下(....偷懒....)
 
要么,将这些.exe 文件收集到一起,放在某一个目录下,并且将这个目录路径添加到系统变量 Path 中
 
geckodriver-v0.19.1-win64.zip 中的驱动支持火狐 55 以上(理论)的版本,Selenium 版本为 3.5 以上
 
chromedriver_win32_2.41_v67-69.zip 中的驱动支持 Chrome 67-69 的版本,Selenium 版本 3.7.0(理论)以上
 
IEDriverServer_x64_3.7.0.zip 中的驱动,据说仅支持 IE 9 以上,但 IE8 可以用,Selenium版本是 3.7.0(理论)
 
注意:如果相关驱动程序没配置好,执行脚本时会报相应的驱动程序找不到!如果驱动跟浏览器版本不一致,则浏览器可能能打开,
但不会执行任何操作! 
 
6.IDE 选择:Eclipse+PyDev (分享文件)
各文件说明如下:
  eclipse:需注意版本,需是支持 JDK1.8 的 64 位版本(eclipse-SDK-4.6.3-win32-x86_64.zip)

 

  PyDev:是一个 eclipse 的插件,让 eclipse 支持 Python 语言
  eclipse explorer_4.1.0.zip:是一个 eclipse 的插件,允许我们在 eclipse 中查找文件在系统中的路径
具体步骤如下:
1)解压 eclipse
2)将 PyDev 6.1.0.zip 包中的内容直接解压复制到 eclipse 的目录下(离线安装方式),另外最新的下载地址:
https://sourceforge.net/projects/pydev/
3)安装 eclipse explorer 插件,在 eclipse 中进行以下操作(安装过程时间可能比较耗时,可以放到最后装):
  点击 Help ,点击 Install New Software... 
  点击 Add,点击 Archive... ,找到 eclipse explorer_4.1.0.zip,点击打开
 
如下图进行勾选,然后点击 Next。
  后续操作,下一步下一步即可。成功安装后eclipse会重新启动。
 
最终安装完成效果如下图所示,鼠标右键某一个文件,点击 Open in explorer,即可自动打开文件所在的目录:

7.IDE 中配置 Python 的解释器路径

Eclipse---Window---Preferences---PyDev---Interpreters---Python Interpreters
Python 环境安装 Ok 的情况下,直接点击 Quick Auto-Config 即可
 
8.在 Eclipse 中创建 Python 项目

 

测试验证搭建环境:

代码:

from selenium import webdriver
import unittest
from time import sleep
class Baidu(unittest.TestCase):
def setUp(self):
self.driver=webdriver.Chrome()
self.driver.implicitly_wait(30)
self.base_url="http://www.baidu.com/"
def test_baidu(self):
driver=self.driver
driver.get(self.base_url)
driver.find_element_by_id("kw").send_keys("博客园")
driver.find_element_by_id("su").click()
sleep(2)
self.assertEqual("博客园_百度搜索", driver.title)
def tearDown(self):
self.driver.quit()
if __name__=="__main__":
unittest.main()

截图:

 

说明:以上步骤均为自己查找资料总结。有遗漏的请留言。

posted on 2019-07-05 16:02  清风不问烟雨&  阅读(225)  评论(0)    收藏  举报