来自Github的优秀源码(python操作iframe框架网页)
#Please use your username and password for academia in code
import time
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome();
driver.get("https://academia.srmuniv.ac.in/")
driver.implicitly_wait(10)
iframe = driver.find_elements_by_css_selector('iframe')[0]
driver.switch_to.frame(iframe)
iframe2 = driver.find_elements_by_css_selector('iframe')[0]
driver.switch_to.frame(iframe2)
#Use of two iframe objects is because the form containing input field is inside an iframe which is inside an iframe
username = driver.find_element_by_id("Email")
username.send_keys("mayank_verma@srmuniv.edu.in")
password = driver.find_element_by_id("Password")
password.send_keys("jai1996m")
driver.find_element_by_id("signinBtn").click();
driver.find_element_by_xpath('//*[@id="zc-container"]/tbody/tr[1]/td/div[5]/table/tbody/tr/td[8]').click();
time.sleep(10)
for i in range(4,12):
for j in range(4,18):
xpath_string='//*[@id="Student_Feedback_Form_2016_17_3"]/div[1]/form/div/table/tbody/tr/td/table/tbody/tr[6]/td/div/div[2]/table/tbody/tr['+str(i)+']/td['+str(j)+']/div/div[1]/li/span'
temp=driver.find_element_by_xpath(xpath_string)
temp.click()
driver.execute_script("arguments[0].textContent = arguments[1]", temp, "Good")
for i in range(4,8):
for j in range(4,17):
xpath_string='//*[@id="Student_Feedback_Form_2016_17_3"]/div[1]/form/div/table/tbody/tr/td/table/tbody/tr[7]/td/div/div[2]/table/tbody/tr['+str(i)+']/td['+str(j)+']/div/div[1]/li/span'
temp=driver.find_element_by_xpath(xpath_string)
temp.click()
driver.execute_script("arguments[0].textContent = arguments[1]", temp, "Excellent")
#driver.find_element_by_xpath('//*[@id="Student_Feedback_Form_2016_17_3"]/div[1]/form/table/tbody/tr/td/span/input[1]').click();
来自Github的优秀源码(python操作iframe框架网页)的更多相关文章
- fir.im Weekly - 你与优秀源码之间只差一个 Star
说起开源社区,Github 是一个不可缺少的存在.作为全球最大的同性交友网站,上面有太多优秀的开源代码库和编程大神,让无数开发者心生向往.那么如何正确的使用 Github,也许是编程学习之必要.来看下 ...
- 你与优秀源码之间只差一个 Star
fir.im Weekly - 你与优秀源码之间只差一个 Star 说起开源社区,Github 是一个不可缺少的存在.作为全球最大的同性交友网站,上面有太多优秀的开源代码库和编程大神,让无数开发者 ...
- GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
最近听同事说他都在使用GitHub,GitHub是程序员的社区,在里面可以学到很多书上学不到的东西,所以最近在准备入手这方面的知识去尝试学习,正好碰到这么详细完整的文章,就转载了,希望对自己和大家有帮 ...
- 【代码管理】GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
GitHub操作总结 : 总结看不明白就看下面的详细讲解. . 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details ...
- [源码]python Scapy Ftp密码嗅探
[源码]python Scapy Ftp密码嗅探 原理很简单,FTP密码明文传输的 截取tcp 21端口User和Pass数据即可 Scapy框架编译程序较大(一个空程序都25M),所以就不提供exe ...
- 【随笔】从gitHub上获取源码
有时候,需要从gitHub上获取源码,下面介绍几个方法: 1.获取链接: 打开gitHub代码库的页面,能在右边看到这个: 点击红圈里的标记,该链接就会复制下来. 然后,如果安装了小乌龟(Tortoi ...
- 如何从github上面拷贝源码
有好奇心的朋友们一定都想看一看很多开源项目的源码,那么github就不用说啦,太多的开源项目都把源码放到上面. 博主最近为了学习angularjs也不得不去github上面弄源码,下面将会介绍如何做: ...
- Android———从GitHub上下载源码的方法【Written By KillerLegend】
首先声明,本文说的是从GitHub上下载源码而非上传源码! 1:下载tortoisegit,下载地址为: https://code.google.com/p/tortoisegit/wiki/Down ...
- [源码解析] 并行分布式框架 Celery 之 worker 启动 (2)
[源码解析] 并行分布式框架 Celery 之 worker 启动 (2) 目录 [源码解析] 并行分布式框架 Celery 之 worker 启动 (2) 0x00 摘要 0x01 前文回顾 0x2 ...
随机推荐
- python基础——字典
字典内置函数&方法 Python字典包含了以下内置函数: 序号 函数及描述 1 cmp(dict1, dict2)比较两个字典元素. 2 len(dict)计算字典元素个数,即键的总数. 3 ...
- Unable to load DLL 'api-ms-win-core-localization-l1-2-0.dll': 找不到指定的模块
asp.net mvc 4.6 发布到WinServer2008R2 SP1 提示 错误 Unable to load DLL 'api-ms-win-core-localization-l1-2-0 ...
- 还是畅通工程,最小生成树kruskal
题目描述: 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离.省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可 ...
- tp5 base64 图片上传
/** * 保存图片 */ public function uploads($value='') { // $file = base64_decode(request()->file('imag ...
- mybatis xml配置文件模版
mybatis xml配置文件模版 1.mybatis核心配置文件书写(SqlMapConfig.xml) <?xml version="1.0" encoding=&quo ...
- 蓝牙协议分析(11)_BLE安全机制之SM
1. 前言 注1:此SM是Security Manager的缩写,非彼SM,大家不要理解歪了! 书接上文,我们在“蓝牙协议分析(10)_BLE安全机制之LE Encryption”中介绍了BLE安全机 ...
- yii2 获取模块名、控制器名、方法名
在视图中: 模块名 $this->context->module->id控制器名 $this->context->id方法名 $this->context-> ...
- 文献--A Survey on Server-side Approaches to Securing Web Applications
Q:1.如何定义XSS攻击? 2.taint-based 啥意思? 3. second-order vulnerabilities 啥意思?
- js 自定义类Android吐司提示框
(function(){ var mouseX = 0; var mouseY = 0; //定义一个全局toaslist用来存在新建的吐司 var toastLsit ...
- PythonStudy——三种字符串 Three strings
# 普通字符串:u'以字符作为输出单位'print(u'abc') # 用于显示 # 二进制字符串:b'' 二进制字符串以字节作为输出单位print(b'abc') # 用于传输 # 原义字符串:r' ...