我正在尝试使用Firefox启动特定的网址。但我只能打开Firefox浏览器而无法启动该URL。
class BrowserHelper
{
IWebDriver driver;
string path = Path.Combine(Environment.CurrentDirectory, @"gecko\\");
public void Navigate(string url)
{
path = path.Replace(@"\", @"\\");
var driverService = FirefoxDriverService.CreateDefaultService(path);
driverService.HideCommandPromptWindow = true;
if (driver == null)
{
driver = new FirefoxDriver(driverService);
}
driver.Url = url;
driver.Navigate().GoToUrl(driver.Url);
driver.Manage().Window.Maximize();
}
}
class Realtest
{
BrowserHelper BH = new BrowserHelper();
public void test()
{
string search ="apple";
BH.Navigate("https://www.google.com/search?q=" + search);
}
}
以下是我要发布的最终网址:https://www.google.com.sg/search?q=apple
有什么建议吗?提前谢谢。
答案 0 :(得分:1)
我已经尝试了以下代码(使用Java),并且通过启动浏览器并加载URL也能正常工作。
System.setProperty("webdriver.gecko.driver","Drivers/geckodriver.exe");
WebDriver driver = new FirefoxDriver();
driver.get("https://www.google.com.sg/search?q=apple");
所以我觉得问题出在本地机器上安装了geckodriver版本和FireFox浏览器。我建议你将FireFox和geckodriver更新到最新版本。
答案 1 :(得分:0)
使用带有c#的命令行还有一个非常简单的解决方案。
只需执行以下命令即可打开具有给定URL的新Firefox标签:
start firefox wikipedia.de
如果您愿意,也可以启动新的Firefox实例:
start firefox -new-instance wikipedia.de
最后但并非最不重要的是.Net代码在CLI中执行命令:
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo()
{
Arguments = "/c start firefox wikipedia.de",
CreateNoWindow = true,
FileName = "CMD.exe"
});
Firefox commandLine参数还可以完成很多其他工作。你在这里找到所有这些: https://developer.mozilla.org/en-US/docs/Mozilla/Command_Line_Options?redirectlocale=en-US&redirectslug=Command_Line_Options
这也适用于chrome和opera,只需调用
即可start opera wikipedia.de
而不是Firefox。
答案 2 :(得分:-1)
您无需设置@app.route('/ajax', methods=['POST'])
def ajax():
upload_file = request.files.getlist('upload-file')
for file in upload_file:
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'], Case_ID + filename))
# Save the filename into a list, we'll use it later
filenames.append(filename)
return redirect('/result')
,删除该行。
driver.Url
此外,如果您只是想在不与页面交互的情况下启动单个URL,那么Selenium就有点过分了。