我有一個程序,它從Excel文件中提取數據併爲用戶操作它。但爲了獲得更新的Excel文件,他們需要從網站下載。我最初嘗試使用機器人類導航到網站,使用用戶名和密碼登錄,然後導航到網站的正確部分,並找到「下載Excel電子表格」按鈕並點擊它。但我明白這是一種可怕的做法,並不總是奏效。 什麼是更好的方式,我可以做到這一點,這樣我的程序就可以進入網站並導航到我想要的頁面,然後下載數據。我讀到了'網頁報廢',但我認爲這不會允許我這樣做。我真的很想與網頁互動,而不是下載它的內容。任何幫助都會很棒。 謝謝, 彼得如何使Java應用程序與網站進行交互
回答
如果你確實需要與互動該網站然後硒/ webdriver是完美的爲您的需求:
http://code.google.com/p/selenium/wiki/GettingStarted
樣品谷歌搜索:
package org.openqa.selenium.example;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;
public class Example {
public static void main(String[] args) {
// Create a new instance of the html unit driver
// Notice that the remainder of the code relies on the interface,
// not the implementation.
WebDriver driver = new HtmlUnitDriver();
// And now use this to visit Google
driver.get("http://www.google.com");
// Find the text input element by its name
WebElement element = driver.findElement(By.name("q"));
// Enter something to search for
element.sendKeys("Cheese!");
// Now submit the form. WebDriver will find the form for us from the element
element.submit();
// Check the title of the page
System.out.println("Page title is: " + driver.getTitle());
}
}
如果您知道URL,您可以使用http請求下載文件。快速谷歌發現這一點:http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html下載文件並保存到磁盤
謝謝,我保存了未來的鏈接,但我需要下載的鏈接沒有直接鏈接,我可以在沒有首先登錄網站的情況下獲得。所以我需要更多的方式來與網站互動,所以我可以登錄並獲得鏈接 – Peter 2011-01-09 18:49:56
有問題的網站是否提供任何類型的API來做到這一點?如果不是,刮除是真正的唯一選擇,除了使用你的機器人解決方案(其中,正如你所說,非常可怕:) – 2011-01-09 19:07:03
我不明白,我們現在正在使用下載的Excel文件。 我可以爲您提供以下解決方案:
我想這應該幫助你...
- 1. Java程序與網站進行交互
- 2. 如何使用java與javascript網站進行交互
- 3. 如何在iphone應用程序中與網站的數據庫進行交互
- 4. 如何使API與我的應用程序進行交互
- 5. Java應用程序與命令行進行交互
- 6. 如何以編程方式與應用程序進行交互
- 7. 如何使用Java與網頁上的表進行交互?
- 8. 如何使用Java與JSP網頁進行交互(XML解析?)
- 9. Windows應用程序可以與網頁進行交互嗎?
- 10. ClickOnce應用程序是否可以與網頁進行交互
- 11. Java應用程序在Web應用程序上與Flash進行交互
- 12. 如何與外部應用程序的terraform進行交互?
- 13. 如何與其他應用程序進行交互?
- 14. 應用程序如何在Linux中與硬件進行交互?
- 15. 如何與C++中的其他應用程序進行交互?
- 16. 如何將android應用程序與樹莓派進行交互...?
- 17. 如何與其他應用程序進行交互
- 18. 如何與AIR應用程序的Windows應用程序進行交互?
- 19. 如何從android應用程序與web應用程序進行交互?
- 20. iphone應用程序與網站互動
- 21. 與從Java應用程序調用的Powershell進程交互
- 22. 使用python與Flash應用程序進行交互
- 23. 使用Android應用程序與Windows應用程序進行交互
- 24. 如何與使用WSH的程序進行交互-Jscript
- 25. 與使用硒的網站進行交互
- 26. 使用c#webrequest與asp.net mvc 3網站進行交互
- 27. 使用Delphi與asp.net mvc 3網站進行交互
- 28. 從移動應用程序與Wordpress網站API交互
- 29. 如何與C++/C的silverlight網站進行交互#
- 30. 如何使用java與正在運行的進程進行交互
是否該網站提供您可以改用不必通過提交按鈕得到它的API。 – 2011-01-09 20:56:12