[1] pry(main)> require 'watir-webdriver'
=> true
[2] pry(main)> browser = Watir::Browser.new
=> #<Watir::Browser:0x61b0b0e094c1512a url="about:blank" title="">
[3] pry(main)> browser.goto 'm.racingnetwork.com.au'
=> "http://m.racingnetwork.com.au/"
[4] pry(main)> browser.frames.size
=> 0
[5] pry(main)> browser.imgs.size
=> 12
[6] pry(main)> x = browser.imgs[0].src
=> "http://m.racingnetwork.com.au/mobile-telstra-racingnetwork-production/theme/img/bpBannerSportLogo_170.png"
[7] pry(main)> browser.img(:src, x).exist?
=> false
[8] pry(main)> browser.img(:src, /mobile/).exist?
=> false
[9] pry(main)> browwer.img.exist?
=> true
[10] pry(main)> browser.img.id
=> ""
为什么我不能访问那个图像,我的定位器有语法错误吗?
不幸的是,在这种情况下,我没有更好的定位器,比如元素id。上次我遇到watir找不到元素的问题,是因为帧,但这里我们没有任何帧。
最佳答案
我试着去做,却找不到。通过在另一个网站上做完全相同的事情,它可以工作。
页面开头:
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
开始我的比较:
<!DOCTYPE HTML>
<html lang="fr" itemscope="" itemtype="http://schema.org/Blog">
我看到的唯一区别是XML:您正在使用的页面是XML格式的,您应该验证不需要解析XML而不是经典的HTML。