Web页面主要由HTML、CSS、JavaScript脚本构成的web页面。随着互联网技术的发展,当下大部分页面都是动态页面。
Web页面中的各种视觉元素,例如文本框、按钮、复选框、图片、超连接、表等。这些元素在Selenium中都被称为页面元素(WebElements),在其余自动化工具中经常被称为对象(如UFT中)。
当咱们想让Selenium自动地操做浏览器时,就必须告诉Selenium如何去定位元素。html
你们都知道,Web页面是由HTML、CSS和JavaScript等组成的,能够经过查看页面源文件的方式了解这些信息,进而能够找到想要的元素标签(Tag),知晓对应元素的属性及属性值,以及页面的结构。以Bing搜索页面为例,如图5-1所示。
其对应的HTML代码为:web
<form action="/search" onsubmit="var id = _ge('hpinsthk').getAttribute('h'); return si_T(id);" role="none"> <div class="b_searchboxForm" role="search" data-bm="15"> <input class="b_searchbox" id="sb_form_q" name="q" title="输入搜索词" type="search" value="" maxlength="100" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" aria-controls="sw_as" aria-autocomplete="both" aria-owns="sw_as"> <div id="sb_go_par" data-sbtip="搜索网页"> <input type="submit" class="b_searchboxSubmit" id="sb_form_go" tabindex="-1" name="go"> </div> <div id="sw_as" role="listbox" aria-label="建议" style="display: block; margin-left: - 1px; margin-right: 1px;"> <div class="sa_as" data-priority="2" data-bm="20"></div> </div> </div> </form>
经过Web页面代码,可以看到,搜索这样的元素,都是采用嵌入在<form>标签内的<input>标签。
其中搜索框<input>标签包含id、class、name等属性。<input class="b_searchbox" id="sb_form_q" name="q" title="输入搜索词" type="search" value="" maxlength="100" autocapitalize="off" autocorrect="off" autocomplete="off" pellcheck="false" aria-controls="sw_as" aria-autocomplete="both" aria-owns="sw_as">
api
图书京东、当当有售
京东:https://item.jd.com/12784287.html
当当:http://product.dangdang.com/29177828.htmlide