status.html

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>status</title>
<script type="text/javascript" async="" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" />
<script type="text/javascript">
$(document).ready(function(){
$('#tooltip').tooltip({"placement": "right"});
});
</script>
</head> <body>
<h3>status</h3>
<div class="row-fluid">
<div class="span3">
<input name="user" placeholder="Disabled TextField" disabled />
</div>
<div class="span3">
<a class="btn disabled">Disabled Button</a>
</div>
<div class="span3">
<input name="radio" type="radio" />
</div>
</div>
</body>
<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
</html>

  

status.py

# -*- coding: utf-8 -*-
from selenium import webdriver
from time import sleep
import os
if 'HTTP_PROXY'in os.environ: del os.environ['HTTP_PROXY'] dr = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('status.html')
dr.get(file_path) text_field = dr.find_element_by_name('user')
print text_field.is_enabled() # 直接用enabled?方法去判断该button的话返回的会是true
# 这是因为button是使用css方法去disabled的,并不是真正的disable
# 这时候需要判断其class里是否有disabled这值来判断其是否处于disable状态
print dr.find_element_by_class_name('btn').is_enabled() # 隐藏掉text_field
# 判断其是否显示
dr.execute_script('$(arguments[0]).hide()', text_field)
print text_field.is_displayed() # 使用click方法选择raido
radio = dr.find_element_by_name('radio')
radio.click()
print radio.is_selected() # 判断元素是否存在
try:
dr.find_element_by_id('none')
except:
print 'element does not exist' dr.quit()

  执行后会报错,经与乙醇沟通后发现是谷歌被墙导致代码木有完全加载.修改代码如下:

#coing=utf-8

from selenium import  webdriver
from time import sleep
import os if 'HTTP_PROXY' in os.environ: del os.environ['HTTP_PROXY'] dr = webdriver.Firefox()
file_path = 'file:///' + os.path.abspath('status.html')
dr.get(file_path) text_field = dr.find_element_by_name('user')
print( text_field.is_enabled()) print(dr.find_element_by_class_name('btn').is_enabled()) myjs = 'document.all.user.style.display = "none";'
dr.execute_script(myjs) print( text_field.is_displayed()) radio = dr.find_element_by_name('radio')
radio.click()
print(radio.is_selected()) try:
dr.find_element_by_id('none')
except:
print('element does not exist') dr.quit()

  

Message: u'$ is not defined' ; Stacktrace的更多相关文章

  1. 浅析"WeixinJSBridge is not defined"

    Fundebug并没有使用微信 JS-SDK,然而却收到了WeixinJSBridge is not defined的报错: 我们的用户也收到了类似的错误报警,并且很多开发者都遇到类似的问题: 我的微 ...

  2. 动态调用WebService

    WebService内容 using Microsoft.CSharp;using System;using System.CodeDom;using System.CodeDom.Compiler; ...

  3. [转]C# 使用Nlog记录日志到数据库

    本文转自:http://www.cnblogs.com/weixing/archive/2013/04/26/3044422.html 摘要]Nlog是一个很不错的.NET日志记录组件,它可以将日志输 ...

  4. 昆仑游戏[JS加密修改]

    昆仑游戏:http://www.kunlun.com/index.html JS加密修改 BigTools=window.BigTools;//重点 RSAKeyPair=window.RSAKeyP ...

  5. WebService创建与使用

    因为项目中需要实现客户端与服务器端的数据交换,以及获取服务器端其他程序的分析结果,所以对WebService做了些简单的了解,现记录如下: 一.WebService程序编写 1.  在VS中新建空白网 ...

  6. 利用C#自带组件强壮程序日志

    在项目正式上线后,如果出现错误,异常,崩溃等情况 我们往往第一想到的事就是查看日志 所以日志对于一个系统的维护是非常重要的 声明 正文中的代码只是一个栗子,一个非常简单的栗子,只是说明这个框架是怎么工 ...

  7. 常见.NET功能代码汇总 (2)

    常见.NET功能代码汇总 23,获取和设置分级缓存 获取缓存:首先从本地缓存获取,如果没有,再去读取分布式缓存写缓存:同时写本地缓存和分布式缓存 private static T GetGradeCa ...

  8. .net WebServer例

    新建.asmx页面 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...

  9. TScrollBox的用法 滚动事件

    //滚轮事件:ScrollBox1: TScrollBox; procedure TfrmReleateGQAccount.ScrollBox1MouseWheel(Sender: TObject; ...

随机推荐

  1. mysql 笔记分享

    mysql LPAD 和RPAD不足位数补齐填充函数总结一下mysql数据库的一些特征MySQL WHERE 语句优化之我见mysql limit 实例详解mysql 如何实现多表联合更新MySQL ...

  2. 关于json 转换BigDecimal精度丢失问题

    今天在转换一个关于金额字段发现一个关于json转换的bug  目前尚未深入观察 问题: 如果金钱为bigdecimal json转换后不会丢失精度 但是通过@responsebody 返回到前端后发现 ...

  3. UVA-10115

    字符查找替换,WA了N次,一次只能替换一个,下一次find必须从第0个位置开始 import java.io.File; import java.io.FileNotFoundException; i ...

  4. HTML5 Canvas ( 创建图形对象 ) createImageData

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. HTML5 Canvas ( 图形变换矩阵 ) transform, setTransform

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. localhost 127.0.0.1

    No1: localhost也叫local ,正确的解释是:本地服务器 127.0.0.1在windows等系统的正确解释是:本机地址(本机服务器) 他们的解析通过本机的host文件,windows自 ...

  7. jquery 的 $.extend 和 $.fn.extend

    $.extend({ add:function(a,b){return a+b;}, bad:function(a,b){return a-b;} }); $.fn.extend({ loading: ...

  8. Screen Monitors

    Screen Screen->MonitorCount Monitors Screen->FormCount Screen->Forms[I]->Name

  9. plsql 粘贴

    plsql 粘贴

  10. c++Builder XE6 MD5 加密算法 BASE64 URL 编码

    xe6,xe7 BASE64XE6 MD5 加密算法Delphifunction MD5(const texto: string): string; var idmd5: TIdHashMessage ...