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. DATE_FORMAT() 函数

    DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据DATE_FORMAT(now(),'%Y-%m-%d %T')

  2. PHP AJAXFORM提交图片上传并显示图片源代码

    PHP dofile.php 文件上传源代码 <? php $file_upload = "upload/"; $file_allow_ext='gif|jpg|jpeg|p ...

  3. PI-webservice06-调用外部webservice过程中注意问题

    1,SAP与.NET系统之间通过webservice来进行数据交互的过程中,格式是有要求的,要求.NET发布出来的webservice中的数据是用list来进行传输的,不能用datatable和lis ...

  4. 在.NET中实现彩色光标/动画光标和自定义光标[转]

    下面是完整的例子,可以通过命令行编译即可看到效果. Test.cs using System; using System.Drawing; using System.Windows.Forms; us ...

  5. 怎样拷贝整个目录并且忽略部分文件及目录(包括windows)

    http://www.dewen.org/q/2150 rsync -a --exclude dir1 --exclude dir2 ... source target

  6. js获取网络图片的宽和高

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 用 Swift 制作一个漂亮的汉堡按钮过渡动画

    汉堡按钮在界面设计中已经是老生常谈了,但是当我在dribbble看到这个漂亮的过渡动画时,我决定试试用代码实现它.   这是 CreativeDash team 的原型图: 你可能已经注意到了,汉堡顶 ...

  8. 一元线性回归模型与最小二乘法及其C++实现

    原文:http://blog.csdn.net/qll125596718/article/details/8248249 监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等), ...

  9. json对象,使用 “ . ”获取值是,不能使用变量作为属性名。

    var he={'aa':"aa",'bb':'bb'}; var chun={'cc':"aa",'dd':'mm'}; c=he.aa; n=chun.c; ...

  10. Android 高级UI设计笔记09:Android如何实现无限滚动列表

    ListView和GridView已经成为原生的Android应用实现中两个最流行的设计模式.目前,这些模式被大量的开发者使用,主要是因为他们是简单而直接的实现,同时他们提供了一个良好,整洁的用户体验 ...