我写了一段代码在windows下运行模拟登陆网页,但是在Linux下没有IE,而且不能打开网页,那么我应该怎么改?
[code="java"]
require 'rubygems'
require 'watir'
ie = Watir::IE.new
ie.goto(url)
ie.text_field(:name,'username').set 'username'
ie.text_field(:name,'password').set 'password'
ie.button(:name,'loginsubmit').click
str=ie.html()
[/code]
楼主没有讲清楚使用的watir的版本和ruby的版本.
watir本来开发的初衷是解决windows下ie的自动化驱动.采用的ole驱动,所以正常情况下只能用在windows平台下.
不过有很多爱好者,开发了如 firewatir safriwatir chromewatir, 不过稳定性不好.
去年,jarib(大概是这个名字) 利用selenium-webdriver重新开发了可以跨平台的跨浏览器的watir兼容版本,叫 watir-webdriver, 我用过一段时间,需要ruby1.8.7以上,安装很简单.
gem install watir-webdriver 即可. 基本与watir的api一致,并且比较稳定.
ubuntu下测试通过.
其官方地址:[url] https://github.com/watir/watir-webdriver[/url]
maybe it's useful for you.
[code="java"]
package com.web.util;
/*
public class QueryResult {
private List queryList; //查询结果的记录数据
private long totalRecord; //查询结果的中记录数
public List<T> getQueryList() {
return queryList;
}
public void setQueryList(List<T> queryList) {
this.queryList = queryList;
}
public long getTotalRecord() {
return totalRecord;
}
public void setTotalRecord(long totalRecord) {
this.totalRecord = totalRecord;
}
}
[/code]
[code="java"]
package com.web.util;
/*
ID: PageIndex.java zhangli
*/
public class PageIndex {
private long startIndex; //开始页码
private long endIndex; //结束页码
public PageIndex(long startIndex, long endIndex) {
this.startIndex = startIndex;
this.endIndex = endIndex;
}
public long getStartIndex() {
return startIndex;
}
public void setStartIndex(long startIndex) {
this.startIndex = startIndex;
}
public long getEndIndex() {
return endIndex;
}
public void setEndIndex(long endIndex) {
this.endIndex = endIndex;
}
}
[/code]
可以用Firefox
[code="ruby"]browser = Watir::Browser.new :ff
browser.goto "watir.com"[/code]
https://github.com/zeljkofilipin/watirbook/blob/master/installation/ubuntu.md