我有自己的网站,当我按下一个按钮,我想加载一个不属于我的网站(即Google.com)。当这个页面加载时,我想要执行一个脚本。
例如,单击my site上的按钮,加载Google.com并用从我的网站传递的脚本文件中的值预加载搜索栏。
如果我访问Google.com时打开developer console并输入命令,我就可以做到这一点,但是,我想自动化这一点,所以我的脚本将操作这个新页面的DOM元素的值,而不是加载他自己的console。
我只是不知道如何加载一个新的网站,并给它一个脚本运行。
这可能吗?谁能给我指明正确的方向吗?
这是可能的,事实上,它是许多开发人员在自动浏览器测试期间使用的基础。
看看Selenium-下面的Java代码使用Selenium来完成您所要求的操作。或者,类似Chrome Headless的https://developers.google.com/web/updates/2017/04/Headless-Chrome或
PhantomJS http://PhantomJS.org/quick-start.html将完成这项工作。
package mypackage;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.WebDriverWait;
public class myclass {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\\selenium-java-2.35.0\\chromedriver_win32_2.2\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");
WebElement element = driver.findElement(By.name("q"));
element.sendKeys("Whatever");
element.submit();
driver.close();
}
}
问题内容: 在HTML页面中包含JavaScript的方法有很多。我知道以下选项: 内联代码或从外部URI加载 包括在或标记[ [1],[2] ] 没有属性或属性(仅外部脚本) 包含在静态源中或由其他脚本动态添加(处于不同的解析状态,具有不同的方法) 不计算硬盘中的浏览器脚本,javascript:URI和-attributes [[3] ],已经有16种方法可以使JS执行,我敢肯定我忘了一些东西
问题内容: 我有一个页面正在从第三方(新闻提要)加载脚本。脚本的url在加载时动态分配(根据第三方代码)。 然后从中加载的脚本创建并加载具有新闻提要中各种内容的元素,并以漂亮的格式等将元素加载到其中(传入ID“ div1287”,以便脚本知道在何处加载内容)。 唯一的问题是,它只会加载一次。我希望它每n秒重新加载一次(从而显示新内容)。 所以,我想我会尝试一下: div清除后,我得到警报,但是没有
我的一个朋友最近在网上发布了他的javascript游戏。你首先进入主页,然后点击一个按钮,把你带到游戏中。 当我检查元素时如下所示: 当有人点击这个时,计数器会递增,这样他就知道有多少人玩过了。他这样做只是为了练习,因为他实际上并不期望任何人能上场。 我想给他一个惊喜,让一个剧本不断地点击这个按钮,一遍又一遍地,让他觉得他有1000个剧本。(当我告诉他时,他会喜欢这个恶作剧的;) 有人知道这是否
问题内容: 我正在使用jquery地址插件来加载页面,但是没有hash(#)。 index.html: page.html: 在#content div中将从page.html中加载#content html(也许我应该使用其他函数,而不是.html(),请纠正我),因为div是script标签,但是加载该页面时我没有收到警告从ajax开始,无需加载ajax就可以运行。有人能帮我吗 ? 编辑:当我
我有一个网站,我已经使用了很长时间,没有任何问题。我做了一些改进来提高性能,包括将数据存储在缓存中,以及改变网站与数据库的交互方式。然而,自从将网站发布到它的位置后,现在每当我试图加载它时,它都返回一个空白页。 每当我尝试加载它时,我都会收到来自该站点的错误电子邮件,显示“外部组件已引发异常”的异常消息。我有几个地方可以发送错误电子邮件,它们都在触发,每个地方提供的堆栈跟踪略有不同,如下所示。 堆
我正在使用Java8 Nashorn来执行一个特定的先前同意的方法。我可以毫无问题地调用特定的方法。不过困扰我的一件事是,当我加载脚本时,它也会执行它。 例如,如果file.js包含一个print("hello world!")scriptEngine.eval(new FileReader("./file.js")将执行并打印hello world。我必须先这样做,然后才能调用我想要的特定方法。