1、安装Python

官网下载python: https://www.python.org/

有2.x 3.x版本, 注意,python3.0不向下兼容2.x版本,有很多包3.0不提供

下载完后直接点击安装即可。比如我的安装目录为:C:\Python27

然后配置系统环境:我的电脑 —>属性—>高级—>环境变量—>系统变量

设置Path,将你的python的安装路径 “C:\Python27” 写入Path变量中即可

在控制台打python命令, 出现如下提示表示配置成功:

2、安装python IDE 

Default: IDLE

Eclipse plugin,(http://pydev.org/updates

1)直接在Eclipse中选择菜单:Help—Install New Updates—And,输入http://pydev.org/updates,下载并安装。

(完成后再启动Eclipse,可以在Eclipse菜单Help->About Eclipse SDK->Installation Detail看到PyDev组件的安装)

2)在Eclipse菜单Windows->Preferences->PyDev->Interpreter python配置你要只用的python解析器。点击New按钮,从Python的安装路径下选择Python.exe。

3、python安装模块(方法一)

Python很多第三方模块可以直接拿来使用

下面以Python language bindings for Selenium WebDriver.为例,说明开发python时,怎么使用第三方提供的对象等

1)https://pypi.python.org/pypi/selenium 下载selenium-2.41.0.tar.gz

2)解压该文件, 再到包含setup.py的目录下执行: (Python第三方模块中一般会自带setup.py文件)

python setup.py install  

表示已经成功install

安装的过程中可能会出现“ImportError: No module named setuptools”的错误提示,这是因为Python默认没有安装setuptools这个模块的,这也是一个第三方模块。下载地址为http://pypi.python.org/pypi/setuptools

先安装setuptools,再重新install selenium即可

注: install完成后, 在C:\Python27\Lib\site-packages 目录下, 多出了selenium-2.41.0-py2.7.egg 目录。

4、python安装模块(方法二)

pip 是一个安装和管理 Python 包的工具, 所以python安装模块也可以借助pip工具来直接install, 这种方式可以不用先去下载包, 直接在线完成安装。

借助pip之前, 先安装pip, 地址https://pypi.python.org/pypi/pip#download , 安装pip可采用上面方法一,安装完成后,配置pip环境变量“C:\Python27\Scripts”

安装完pip后, 就可以借助pip 安装、升级、卸载 python第三方模块,如:

pip install -U selenium
pip install goslate
pip install simplejson
pip uninstall simplejson
pip install --upgrade simplejson...... 

5、python开发selenium脚本简单示例

# coding=gb2312
'''
Created on 2014-05-14
@author: jennifer.huang
'''
from selenium import webdriver
from selenium.webdriver.common.by import By keyword="selenium python"
try:
browser = webdriver.Chrome("chromedriver.exe")
browser.get("http://www.baidu.com")
browser.find_element(By.ID, "kw1").send_keys(keyword)
browser.find_element(By.ID, "su").submit()
print browser.find_element(By.ID, "kw").get_attribute("value")
assert keyword in browser.find_element(By.ID, "kw").get_attribute("value")
except KeyboardInterrupt:
print "ended by user"
finally:
browser.quit()

对比下java语言的写法:

package com.jennifer.tests;
import junit.framework.Assert;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver; public class SeleniumJava {
WebDriver driver;
@Before
public void init(){
driver = new FirefoxDriver();
}
String keyword="selenium python";
@Test
public void test(){
driver.get("http://www.baidu.com");
driver.findElement(By.id("kw1")).sendKeys(keyword);
driver.findElement(By.id("su")).submit();
System.out.println(driver.findElement(By.id("kw")).getAttribute("value"));
Assert.assertEquals(driver.findElement(By.id("kw")).getAttribute("value"), keyword);
}
@After
public void tearDown(){
driver.quit();
} }

Python Quick Start的更多相关文章

  1. Python Quick list dir

    昨天 Python释放了 3.5 ,添加了 os.scandir 根据文档该API比os.listdir快Docs which speeds it up by 3-5 times on POSIX s ...

  2. Why Python is Slow

    Why Python is Slow: Looking Under the Hood https://jakevdp.github.io/blog/2014/05/09/why-python-is-s ...

  3. Quick Reference Card Urls For Web Developer

    C# C# Cheatsheet & Notes Coding Guidelines for C# 3.0, 4.0, 5.0 Core C# and .NET Quick Reference ...

  4. OpenSSL重大漏洞-Heartbleed之漏洞利用脚本POC讲解

    OpenSSL Security Advisory [07 Apr 2014] ======================================== TLS heartbeat read ...

  5. OpenSSL "heartbleed" 安全漏洞

    在 heartbleed 的官网上有关于 CVE-2014-0160 漏洞的详细信息,这是关于 OpenSSL 的信息泄漏漏洞导致的安全问题.改 Heartbleed bug 可以让互联网的任何人读取 ...

  6. Practical Web Penettation Testing (the first one Mutillidae 大黄蜂)

    1.now we looke at this book . I decide  to make a brief review the book covers as follows (I straigh ...

  7. TensorFlow学习路径【转】

    作者:黄璞链接:https://www.zhihu.com/question/41667903/answer/109611087来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  8. TensorFlow学习线路

    如何高效的学习 TensorFlow 代码? 或者如何掌握TensorFlow,应用到任何领域? 作者:黄璞链接:https://www.zhihu.com/question/41667903/ans ...

  9. MongoDB排序记录

    MongoDB sort()方法 要在MongoDB中排序文档,需要使用sort()方法. 该方法接受包含字段列表及其排序顺序的文档.使用指定排序顺序1和-1. 1用于升序,而-1用于降序. 语法 s ...

随机推荐

  1. android知乎小圆圈刷新效果

    前几天看到包括知乎在内的很多应用都使用到了一种小圆圈划动刷新的效果,仔细查了一下,原来是android v7包里面最新的刷新效果.使用起来也是十分简单的. 首先先建立一个activity,在布局文件里 ...

  2. Android Layout_Gravity和Gravity

    简单来说layout_gravity表示子控件在父容器的位置,gravity表示控件内容在控件内的位置. 上面图片的xml代码 <?xml version="1.0" enc ...

  3. ThinkPad指纹验证在win7无法使用的解决方法

    原先本本装window7 64bit 专业版(正版),但用着用着觉得 很不爽 ,反应特慢.所以决定对本本来次大换血,换成windows server 2008 R2.最后在装指纹验证的时候,使用超级管 ...

  4. Win7 不能安装 msi 解决办法

    Win7 不能安装Setup.msi解决办法 解决方案如下: 新建一个文本文件,输入msiexec /i d:\Setup.msi (假设文件名为Setup.msi ,放在d盘根目录下,即是安装程序的 ...

  5. JSF教程(10)——生命周期之Update Model Values Phase

    在整个JSF生命周期中经历了取值.验证的阶段终于从request中拿到合理的值,以下就是在本阶段给相应的服务端对象(ManageBean)赋值了.JSF实现仅仅是去更新和input组件中value属性 ...

  6. Android多媒体数据库之MediaStore研究

    应网友要求,今天给大家讲android的多媒体数据库.MediaStore这个类是android系统提供的一个多媒体数据库,android 中多媒体信息都可以从这里提取.这个MediaStore包括了 ...

  7. MySQL · BUG分析 · Rename table 死锁分析

    http://mysql.taobao.org/monthly/2016/03/06/ 背景 InnoDB buffer pool中的page管理牵涉到两个链表,一个是lru链表,一个是flush 脏 ...

  8. 修改mac os分辨率(VMware)

    转自:http://hi.baidu.com/hehonglei123/item/55591c17e7991d582a3e22a1 1. 在Mac系统中安装VMsvga2:VMsvga2_v1.2.3 ...

  9. UNIX基础知识之用户标识

    一.用户ID 口令文件(/etc/passwd)登录项中的用户ID(user ID)是个数值,它向系统标识各个不同的用户.系统管理员在确定一个用户的登录名的同时,确定其用户ID.用户不能更改其用户ID ...

  10. 申请TexturePacker 或 PhysicsEditor free licenses

    有一个跟开发有关的blog,就可以去 http://www.codeandweb.com/request-free-license 申请一个free licenses. 可以申请TexturePack ...