我比java编程语言更熟悉我喜欢从网站中提取数据并将其存储到我的机器上运行的数据库中。这可能在java.If中我应该使用哪种API。例如,网站上列出的学校数量如何使用java提取数据并将其存储到我的数据库中。
答案 0 :(得分:7)
你所指的通常被称为'screenscraping'。在Java中有多种方法可以做到这一点,但是,我更喜欢HtmlUnit。虽然它被设计为测试Web功能的一种方法,但您可以使用它来访问远程网页并解析它。
我建议使用一个好的错误处理html解析器,如Tagsoup,从HTML中提取你正在寻找的内容。
答案 1 :(得分:1)
你肯定需要一个像NekoHTML这样的好解析器。
以下是使用NekoHTML的示例,尽管使用的是Groovy(基于Java的脚本语言)而不是Java本身:
http://www.keplarllp.com/blog/2010/01/better-competitive-intelligence-through-scraping-with-groovy
答案 2 :(得分:1)
您可以使用
中的VietSpider XMLhttp://sourceforge.net/projects/binhgiang/files/
下载VietSpider3_16_XML_Windows.zip或VietSpider3_16_XML_Linux.zip
VietSpider Web Data Extractor:软件从网站((Data Scraper))抓取数据,格式化为XML标准(Text,CDATA),然后存储在关系数据库中。产品支持各种RDBM,如Oracle,MySQL,SQL Server,H2,HSQL,Apache Derby,Postgres ...... VietSpider Crawler支持会话(登录,通过表单输入查询),多次下载,JavaScript处理,代理(和多代理)通过自动扫描网站上的代理)...
答案 3 :(得分:0)
根据您真正想要做的事情,您可以使用许多不同的解决方案。
如果您想要获取网页的HTML代码,那么URL.getContent()可能是您的解决方案。这是一个小教程:
http://www.javacoffeebreak.com/books/extracts/javanotesv3/c10/s4.html
编辑:不明白他正在寻找解析HTML代码的方法。上面已经提出了一些工具。对不起。