Verileri bir excel dosyasından alan ve kullanıcı için değiştiren bir programım var. Ancak excel dosyasına güncellemeler almak için bir web sitesinden indirilmeleri gerekir. Başlangıçta web sitesine gitmek, kullanıcı adı ve parola ile giriş yapmak için robot sınıfını kullanmayı denedim, ardından web sitesinin doğru bölümüne gidin ve "excel e-tablosunu indir" yazan düğmeyi bulun ve tıklayın. Ama anlıyorum ki bunu yapmanın korkunç bir yolu ve her zaman işe yaramıyor. Programın web sitesine gidebilmesi ve istediğim sayfaya gidebilmesi ve ardından verileri indirebilmesi için bunu yapmanın daha iyi bir yolu nedir? 'Sayfa kazıma' hakkında okudum ama bunu yapmama izin vereceğini düşünmüyorum. Web sayfasıyla etkileşimde bulunmak istediğim için çok fazla içerik indirmek istemiyorum. Herhangi bir yardım harika olurdu. Teşekkür, PeterJava uygulaması bir web sitesiyle nasıl etkileşime giriyor
cevap
aslında etkileşim gerekiyorsa web sitesi daha sonra selenyum/webdriver ihtiyaçlarınız için mükemmel:
http://code.google.com/p/selenium/wiki/GettingStarted
Numune Google arama:
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'yi biliyorsanız dosyayı indirmek için http isteklerini kullanabilirsiniz. http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html dosyayı indirmek ve diske
Teşekkürler, geleceğin bağlantısını kaydettim, ancak indirmem gereken bağlantı, web sitesine giriş yapmadan önce alabileceğim doğrudan bir URL'ye sahip değil. Bu yüzden, web sitesiyle etkileşimde bulunabilmem için daha çok bir yola ihtiyacım var, böylece giriş yapabilirim ve bağlantıya ulaşabilirim – Peter
Bu web sitesi bunu yapmak için herhangi bir API sunuyor mu? Değilse, robot çözümünüzü kullanmaktan başka, kazıma gerçekten tek seçeneğinizdir (ki, dediğiniz gibi, oldukça korkunç). –
ben indirilmek üzere hemen kullanarak dosyayı excel olduğunu anlamadı kaydetmek: Hızlı google buldum. Sana aşağıdaki çözümleri sunabilir:
- Wget for java
- Apache Commons Net for network protocols
- cURL for java Bu size yardımcı gerektiğini düşünüyorum
...
- 1. node js kabuk uygulamasıyla etkileşime giriyor
- 2. Nasıl bir java web uygulaması
- 3. Java Web Uygulaması Dağıtımı
- 4. Bir web sitesinde bir Java uygulaması çalıştırmak
- 5. java EE web uygulaması/Nuxeo
- 6. SVN Kullanımı Bir Evreleme ve Canlı Web Sitesiyle
- 7. Mevcut bir Tridion mücadale Java web uygulaması içinde ortam çerçevesi ekleme bir Tridion mücadale web uygulaması
- 8. java web uygulaması için anında LESS derleyici?
- 9. Veri tabanı i18n java web uygulaması için
- 10. Java web uygulaması health check iyi uygulamalar
- 11. Java Web Uygulaması Paypal Entegrasyonuna sahip olmak
- 12. Java ClassNotFoundException çalışırken mvc web uygulaması
- 13. nasıl Saas web uygulaması
- 14. iPhoneOS ile etkileşime gir iPhone
- 15. Bir Java Web Start uygulaması oluşturmak için Maven'i kullanma
- 16. “Web uygulaması”
- 17. Bildiri Node.js sitesiyle önbellekleme nasıl yapılır
- 18. Bir Java Web Uygulaması için Kullanıcı Veri Şifrelemesi (Spring/Jboss)
- 19. web telefonu uygulaması web platformunda nasıl çalıştırılır?
- 20. Sitenin kökünde bir web uygulaması nasıl görünür?
- 21. Clojure web uygulaması - nereden başlarım?
- 22. Bu kod modele giriyor mu?
- 23. HTML ile masaüstü uygulamaları görünümünde bir web uygulaması uygulaması geliştirin
- 24. JRuby'yi kullanarak nasıl bir Java uygulaması oluşturursunuz?
- 25. Eclipse'de bir java masaüstü uygulaması nasıl oluşturabilirim?
- 26. Herhangi bir Java hash ağacı uygulaması mı?
- 27. Gulp süreci çalışırken EBUSY hatası devreye giriyor
- 28. Java, System V linux mesaj kuyrukları ile etkileşime girebilir mi?
- 29. Farklı bir android tarayıcı ile nasıl etkileşime geçilir (get url)
- 30. Java uygulaması Azure'da çalışmıyor
web sitesi bir gönderme düğmesi aracılığıyla almak zorunda yerine kullanılabilecek bir API sağlar mı. –