Comment extraire les données à partir d'un site web à l'aide de java?
Je suis familier avec le langage de programmation java j'aime pour extraire les données à partir d'un site web et de les stocker dans ma base de données en cours d'exécution sur ma machine.Est-ce possible en java.Si oui, de quel API que je devrais utiliser. Par exemple, le nombre d'écoles inscrites sur un site web Comment puis-je extraire les données et de les stocker dans ma base de données à l'aide de java.
- Dupes: stackoverflow.com/questions/tagged/screen-scraping+java
- Des Millions de dupes! stackoverflow.com/questions/26638/..., stackoverflow.com/questions/238036/java-html-parsing, etc, etc, etc
Vous devez vous connecter pour publier un commentaire.
Ce que vous faites allusion, est communément appelé "screenscraping'. Il existe une variété de façons de le faire en Java, cependant, je préfère Interface htmlunit. Alors qu'il a été conçu comme un moyen de tester la fonctionnalité web, vous pouvez l'utiliser pour frapper à distance un site web, et dispensons.
Je vous conseille d'utiliser une bonne gestion des erreurs html parser comme Tagsoup à extraire de l'HTML exactement ce que vous cherchez.
Vous avez certainement besoin d'un bon analyseur comme NekoHTML.
Voici un exemple d'utilisation de NekoHTML, mais en utilisant les Groovy (basé sur Java langage de script) plutôt que de Java lui-même:
http://www.keplarllp.com/blog/2010/01/better-competitive-intelligence-through-scraping-with-groovy
Vous pouvez utiliser VietSpider XML à partir d'
http://sourceforge.net/projects/binhgiang/files/
Télécharger VietSpider3_16_XML_Windows.zip ou VietSpider3_16_XML_Linux.zip
VietSpider Web Data Extractor: un Logiciel analyse les données sur les sites web (Données(Grattoir)), format standard XML (Texte, CDATA) puis le stocker dans la base de données relationnelle. Produit prend en charge les différents types de Sgbd comme Oracle, MySQL, SQL Server, H2, HSQL, Apache Derby, Postgres ...VietSpider Robot prend en charge de session (login, requête par formulaire de saisie), multi-télécharger, gestion du JavaScript, proxy (et multi-proxy par balayage automatique de l'procurations de site)...
Selon ce que vous êtes vraiment essayer de faire, vous pouvez utiliser de nombreuses solutions différentes.
Si vous avez juste envie de récupérer le code HTML d'une page web, puis de l'URL.getContent() peut être votre solution. Voici un petit tutoriel :
http://www.javacoffeebreak.com/books/extracts/javanotesv3/c10/s4.html
EDIT : ne pas comprendre qu'il était à la recherche d'un moyen d'analyser le code HTML. Certains outils ont été suggérées ci-dessus. Désolé pour ça.