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. PHP 支持IMAP

    linux下安装php支持imap 2008-11-26 10:31:10|  分类: linux 学习日志|举报|字号 订阅     第一步:安装apache注:当前目录为/tmp,目录下有http ...

  2. 进入名企必读的.NET面试题

    1. 罗列ASP.NET服务器控件的运行的生命周期. 一般服务器控件的生命周期包含11个阶段: /// <summary> /// 1. 初始化 /// </summary> ...

  3. PostgreSQL的initdb 源代码分析之六

    继续分析 下面的是获取运行此程序的用户名称,主要还是为了防止在linux下用root来运行的情形. effective_user = get_id(); ) username = effective_ ...

  4. 【WinForm】C# 发送Email

    发送Email  的条件 1.SmtpClient SMTP 协议    即 Host 处理事务的主机或IP地址     //smtp.163.com      UseDefaultCredentia ...

  5. nginx 学习八 高级数据结构之基数树ngx_radix_tree_t

    1 nginx的基数树简单介绍 基数树是一种二叉查找树,它具备二叉查找树的全部长处:检索.插入.删除节点速度快,支持范围查找.支持遍历等. 在nginx中仅geo模块使用了基数树. nginx的基数树 ...

  6. 【linux设备模型】之platform设备驱动

    一.platform总线.设备和驱动     platform是一种虚拟总线,对应的设备称为platform_device,对应的驱动称为platform_driver. platform_devic ...

  7. .net平台下C#socket通信(转)

    上篇.net平台下C#socket通信(上)介绍了socket通信的基本原理及最基本的通信方式.本文在此基础上就socket通信时经常遇到的问题做一个简单总结,都是项目中的一些小问题,拿来此处便于下次 ...

  8. Naive Bayes Algorithm

    朴素贝叶斯的核心基础理论就是贝叶斯理论和条件独立性假设,在文本数据分析中应用比较成功.朴素贝叶斯分类器实现起来非常简单,虽然其性能经常会被支持向量机等技术超越,但有时也能发挥出惊人的效果.所以,在将朴 ...

  9. 正确率、召回率和 F 值

    原文:http://peghoty.blog.163.com/blog/static/49346409201302595935709/ 正确率.召回率和 F 值是在鱼龙混杂的环境中,选出目标的重要评价 ...

  10. 使用c3p0连接池

    首先我们需要知道为什么要使用连接池:因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉,每次新建连接都需要140毫秒左右的时间而C3P0连接池会池化连接,随 ...