相关疑难解决方法(0)

获取Selenium中Javascript代码的返回值

我正在使用Selenium2对我的网站进行一些自动化测试,我希望能够获得一些Javascript代码的返回值.如果我foobar()在我的网页上有一个Javascript函数,并且我想调用它并将返回值放入我的Python代码中,我可以调用什么来做到这一点?

javascript python selenium selenium-webdriver

97
推荐指数
2
解决办法
7万
查看次数

使用Python在Selenium中运行javascript

我对Selenium来说是全新的.我想在以下代码中执行javascript代码段(如代码中所述),但不能这样做.请帮忙.

from selenium import webdriver
import selenium
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time

patch = raw_input("Enter patch number\n")
rel = raw_input("Enter release\n")
plat = raw_input("Enter port\n")

browser = webdriver.Firefox()

browser.get("xxxxxxxxxxxxxxxxx")

pdtfamily = browser.find_element_by_id("prodFamilyID")
pdtfamily.send_keys("Database & Tools" + Keys.TAB)
time.sleep(5)

pdt = browser.find_element_by_id("productID")
pdt.send_keys("Intelligent Agent" + Keys.TAB)
time.sleep(5)

pdt1 = browser.find_element_by_id("patchCacheChkBxID")
pdt1.send_keys(Keys.SPACE)
time.sleep(5)

pdt7 =  browser.find_element_by_id("M__Idf")
pdt7.send_keys(plat)

pdt8 =  browser.find_element_by_id("M__Idg")
pdt8.send_keys("American English")

# Here I want to execute this javascript - "submitForm('patchCacheAdd',1,{'event':'ok'});return false"

browser.close()
Run Code Online (Sandbox Code Playgroud)

如果我使用 -

selenium.GetEval("submitForm('patchCacheAdd',1,{'event':'ok'});return …
Run Code Online (Sandbox Code Playgroud)

javascript python selenium

79
推荐指数
3
解决办法
12万
查看次数

嵌入Youtube的自动全屏

我在网页上嵌入了Youtube视频.

使用带有Youtube APIHTML5 iframe,是否可以在用户按下播放时全屏显示视频?

由于该网站适用于iPad,因此无法使用Chromeless播放器.

javascript embed youtube html5 ipad

21
推荐指数
2
解决办法
6万
查看次数

使用iframe和javascript API全屏显示youtube视频

我有一个隐藏控件的嵌入式YouTube视频:

<iframe id="ytplayer" type="text/html" width="400" height="225"
src="http://www.youtube.com/embed/dMH0bHeiRNg?rel=0&controls=0&showinfo=0
&loop=1&hd=1&modestbranding=1&enablejsapi=1&playerapiid=ytplayer"
frameborder="0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)

我可以使用youtube Javascript API来控制它.

var tag = document.createElement('script');

tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('ytplayer', {
  events: {
    'onReady': onPlayerReady,
    'onStateChange': onPlayerStateChange
  }
});
}
Run Code Online (Sandbox Code Playgroud)

player.playVideo()等等的东西完美地工作.现在我正在寻找一种方法,通过Javascript调用使视频在全屏模式下播放,但我在API中找不到任何方法.

它甚至可能(没有控制),如果是这样 - 如何?

javascript youtube youtube-api

16
推荐指数
4
解决办法
5万
查看次数