Python实现浏览器自动化操作

原文地址:Python实现浏览器自动化操作作者:rayment

 
最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没有更新了。还有就是利用selenium,可支持多种浏览器。网上资料比较多。经过比较,我选择了Splinter模块,因为利用Splinter开发浏览器自动化操作,编写代码比较简单。

一、Splinter的安装
Splinter的使用必修依靠Cython、lxml、selenium这三个软件。所以,安装前请提前安装
Cython、lxml、selenium。以下给出链接地址:
1)http://download.csdn.net/detail/feisan/4301293
2)http://code.google.com/p/pythonxy/wiki/AdditionalPlugins#Installation_no

3)http://pypi.python.org/pypi/selenium/2.25.0#downloads
4)http://splinter.cobrateam.info/

二、Splinter的使用
 
这里,我给出自动登录126邮箱的案例。难点是要找到页面的账户、密码、登录的页面元素,这里需要查看126邮箱登录页面的源码,才能找到相关控件的id.

 
例如:输入密码,密码的文本控件id是pwdInput.可以使用browser.find_by_id()方法定位到密码的文本框,

接着使用fill()方法,填写密码。至于模拟点击按钮,也是要先找到按钮控件的id,然后使用click()方法。
由于代码较简单,我就只在代码中给出注解说明工作原理。
(测试环境win7+python2.7.3+firefox)

1)登录截图

2)代码
----------------------------------------
#coding=utf-8
import time
from splinter import Browser

def splinter(url):
    browser =
Browser()
    #login 126
email websize
   
browser.visit(url)
    #wait web
element loading
   
time.sleep(5)
    #fill in
account and password
   
browser.find_by_id('idInput').fill('xxxxxx')
   
browser.find_by_id('pwdInput').fill('xxxxx')
    #click the
button of login
   
browser.find_by_id('loginBtn').click()
   
time.sleep(8)
    #close the
window of brower
   
browser.quit()

if __name__ == '__main__':
    websize3
='http://www.126.com'
   
splinter(websize3)
-------------------------------------------

时间: 2024-08-17 13:15:29

Python实现浏览器自动化操作的相关文章

[转载]Python实现浏览器自动化操作

原文地址:Python实现浏览器自动化操作作者:rayment   最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没有更新了.还有就是利用selenium,可支持多种浏览器.网上资料比较多.经过比较,我选择了Splinter模块,因为利用Splinter开发浏览器自动化操作,编写代码比较简单. 一.Splinter的安装 Splinter的使用必修依靠Cython.lxml.selenium这三个软件.所以,安装

详解Google Chrome浏览器(操作篇)(下)

开篇概述      由于最近忙于公司产品的架构与研发,已经三个多月没有写博客了,收到有些朋友的来信,问为什么不及时更新博客内容呢,他们说他们正期待着某些内容.对此,非常抱歉,那么我在此也给各位朋友一些承诺,从即日起,无论再忙,也想办法抽出时间保证每周至少一篇文章.好了,废话不多说了,进入我们的主题吧,<详解Google Chrome浏览器(操作篇)(下)>       建议大家在阅读本篇文章前,先阅读前面写的两篇文章,即详解google Chrome浏览器(理论篇)和详解Google Chro

ShutIt:一个基于Python的shell自动化框架

译者注:本文通过实例简单介绍了ShutIt这个基于Python的自动化框架的使用方法.除了pexpect,我们又多了这个选择.以下是译文. ShutIt是一个易于使用的基于shell的自动化框架.它对基于python的expect库(pexpect)进行了包装.你可以把它看作是"没有痛点的expect".它可以通过pip进行安装. Hello World 让我们从最简单的例子开始吧.创建一个名为example.py的文件: import shutit      session = sh

使用python调用浏览器并打开一个网址的例子_python

python 打开浏览器,可以做简单的刷网页的小程序.仅供学习,别用非法用途. python的webbrowser模块支持对浏览器进行一些操作,主要有以下三个方法: 复制代码 代码如下: webbrowser.open(url, new=0, autoraise=True)webbrowser.open_new(url)webbrowser.open_new_tab(url) 我们需要了解webbrowser.open()方法: 复制代码 代码如下: webbrowser.open(url, n

python调用浏览器打开网站程序

python的webbrowser模块支持对浏览器进行一些操作 主要有以下三个方法:  代码如下 复制代码   webbrowser.open(url, new=0, autoraise=True)         webbrowser.open_new(url)         webbrowser.open_new_tab(url) 我们需要了解webbrowser.open()方法: webbrowser.open(url, new=0, autoraise=True) 在系统的默认浏览器

Python文件及目录操作实例详解

  本文实例讲述了Python文件及目录操作的方法.分享给大家供大家参考.具体分析如下: 在python中对文件及目录的操作一般涉及多os模块,os.path模块.具体函数以及使用方法在程序中说明. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 5

在Python中使用mongoengine操作MongoDB教程

  在Python中使用mongoengine操作MongoDB教程          这篇文章主要介绍了在Python中使用mongoengine操作MongoDB教程,包括在Django下的一些使用技巧,需要的朋友可以参考下 最近重新拾起Django,但是Django并不支持mongodb,但是有一个模块mongoengine可以实现Django Model类似的封装.但是mongoengine的中文文档几乎没有,有的也是简短的几句介绍和使用.下面我就分享一下我在使用过程中所记录下的一些笔记

分析用Python脚本关闭文件操作的机制

  这篇文章主要介绍了分析用Python脚本关闭文件操作的机制,作者分Python2.x版本和3.x版本两种情况进行了阐述,需要的朋友可以参考下 如果不用"with",那么Python会在何时关闭文件呢?答案是:视情况而定. Python程序员最初学到的东西里有一点就是可以通过迭代法很容易地遍历一个打开文件的全文: ? 1 2 3 f = open('/etc/passwd') for line in f: print(line) 注意上面的代码具有可行性,因为我们的文件对象"

海豚浏览器手势操作怎么用?

  海豚浏览器手势操作怎么用?          1)打开手机海豚浏览器软件,在软件界面点击下方"海豚"图标. 2)在出现的对话框里点击"设置",随后点击"更多设置",在"设置"界面点击"手势与声纳". 3)输入自己要创建手势的网站的网址,输入完网址后点击"确定", 4)随后进入创建手势界面,输入你要创建的手势,点"完成",返回软件界面长按下方"海豚&quo