Python2.6.6执行selenium自动化

系统类型:

[root@bogon home]# uname -a
Linux bogon 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux

Python版本:

[root@bogon home]# python -V
Python 2.6.6

安装并配置vnc-server:

[root@bogon home]# rpm -ivh vnc-server-4.1.2-14.el5_3.1.x86_64.rpm

[root@bogon home]# rpm -qa | grep vnc
vnc-server-4.1.2-14.el5_3.1.x86_64

修改VNCServer主配置文件

[root@bogon home]# vim /etc/sysconfig/vncservers

复制最后两行并去掉行首注释符,然后修改为

VNCSERVERS="1:root"

VNCSERVERARGS[1]="-geometry 1024x768"

设置VNCServer远程连接密码

[root@bogon home]# vncpasswd

输入两次相同的密码

启动vncserver服务

[root@bogon home]# /etc/init.d/vncserver start

上一步执行完毕会在root宿主目录下生成.vnc开头的隐藏目录,该目录下面的文件就是root用户的VNC桌面配置文件。打开xstartup配置桌面

[root@bogon home]# vim /root/.vnc/xstartup

将最后一行改为

gnome &

#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
gnome &

(使用GNOME桌面)

[root@bogon home]# /etc/init.d/iptables restart

设置vnc显示端口

[root@bogon home]# export DISPLAY=:1

安装pip工具:

https://pip.pypa.io/en/stable/installing/#installing-with-get-pip-py

下载源文件并安装:python get-pip.py

应用pip安装更新 selenium : (pip install selenium)

selenium (2.53.1)

更新Firefox的Linux版本:

第一步:到官网下载最新的安装包。

得到 Firefox-latest.tar.bz2

第二步:解压安装包。

[root@bogon home]# tar jxvf Firefox-latest.tar.bz2

获取firefox解压目录

第三步:替换原有Firefox版本

[root@bogon home]# cd /usr/lib64/

[root@bogon home]# rm -rf firefox

[root@bogon home]# cp -rf /home/firefox /usr/lib64/

[root@bogon home]# ln -s /usr/lib64/firefox/firefpx /usr/bin/firefox

第四步:重启使firefox生效或直接在图形界面打开firefox

[root@bogon home]# type firefox

  firefox is hashed (/usr/bin/firefox)

[root@bogon home]# firefox -v
Mozilla Firefox 45.0.1

Linux系统下Python2.6.6执行selenium可以避免终端上显示的问题,不必打开浏览器,可以在终端中显示执行selenium自动化的相关信息。

# coding = utf-8

import sys
import os
from selenium import webdriver
from selenium.webdriver.common import by

reload(sys)
sys.setdefaultencoding( "utf-8" )
os.system("export DISPLAY=:1")
if __name__ == '__main__':
  ff = webdriver.Firefox()
  ff.get("http://www.baidu.com")
  el = ff.find_element(by.By.ID, "kw")
  el.send_keys("wozijisun")
  ff.find_element_by_id("su").click()
  print(ff.title)
  print(ff.current_url)
  print(ff.page_source)
  print(ff.maximize_window())

  ff.quit()

上一篇:jquery 判断一个元素是否在数组中 $.inarry()使用


下一篇:mongodb进阶一之高级查询