很多网站是用js或Jquery 生成数据的,到后台获取到数据以后,用 document.write()或者("#id").html="" 的方式 写到页面中,这个时候用浏览器查看源码是看不到数据的。
HttpClient是不行的,看网上说HtmlUnit,说 可以获取后台js加载完后的完整页面,但是我按照文章上说的 写了 ,都不好使。
String url = "http://xinjinqiao.tprtc.com/admin/main/flrpro.do"; try { WebClient webClient = new WebClient(BrowserVersion.FIREFOX_10); //设置webClient的相关参数 webClient.getOptions().setJavaScriptEnabled(true); webClient.getOptions().setCssEnabled(false); webClient.setAjaxController(new NicelyResynchronizingAjaxController()); //webClient.getOptions().setTimeout(50000); webClient.getOptions().setThrowExceptionOnScriptError(false); //模拟浏览器打开一个目标网址 HtmlPage rootPage = webClient.getPage(url); System.out.println("为了获取js执行的数据 线程开始沉睡等待"); Thread.sleep(3000);//主要是这个线程的等待 因为js加载也是需要时间的 System.out.println("线程结束沉睡"); String html = rootPage.asText(); System.out.println(html); } catch (Exception e) { }
其实这段代码不好使。
求解答,其中典型的就是这个链接的页面,怎么能在java程序中获取其中的数据?
http://xinjinqiao.tprtc.com/admin/main/flrpro.do
相关推荐
在Web开发和数据抓取领域,Java爬虫技术是实现网页自动化信息提取的重要手段。本文主要讲述如何利用Java编程语言中的Jsoup库和HttpClient工具包来获取和解析动态生成的数据,特别是那些通过JavaScript动态加载的数据...
在这个系统中,Java网络爬虫负责从互联网上自动抓取信息,数据库用于存储这些信息,JSP(JavaServer Pages)用于在Web服务器端生成动态网页,而搜索引擎则提供了方便快捷的信息查找功能。 **Java网络爬虫**:Java是...
- **处理动态内容**:现代网页常使用JavaScript生成内容,可能需要使用如Selenium等工具处理。 - **异常处理**:考虑到网络波动、服务器错误等情况,应编写健壮的异常处理机制。 6. **法律与道德** 在进行网络...
在信息提取和清洗阶段,爬虫需要处理各种网页结构差异,如动态加载的内容、JavaScript生成的元素等。它可能会使用正则表达式或者XPath、CSS选择器来定位信息,同时进行异常处理和数据清洗,确保提取的数据准确无误。...
Java爬取京东数据是一项涉及网络...通过学习和实践这些知识点,你将能够构建一个有效的Java爬虫程序,从京东网站上抓取你需要的数据。同时,要确保遵守网站的robots.txt协议,尊重网站的版权,避免不必要的法律风险。
在Java编程领域,爬虫是一种常见的技术,用于自动地从互联网上抓取信息。本项目专注于使用Java编写...在实践中,不断提升对网站结构和反爬策略的分析能力,以及处理数据的技巧,是成为一名合格的Java爬虫开发者的关键。
此外,处理JavaScript生成的内容可能需要引入如Selenium这样的自动化测试工具,它可以模拟用户交互,动态获取数据。 数据存储是爬虫工作的最终目的。根据需求,可以选择不同的存储方式,如文件系统、数据库(如...
标题“test_static_html:java生成静态HTML”暗示了这是一个关于使用Java编程语言生成静态HTML页面的主题。在IT领域,静态HTML是指不包含服务器端脚本的网页,它们的内容在发送到浏览器时不会改变。这样的页面通常...
使用Selenium配合Jsoup,可以先通过Selenium加载页面,然后使用Jsoup解析已经渲染后的DOM,从而获取动态生成的内容。 **5. 扩展和优化** - 错误处理:在爬虫开发中,应处理可能的网络错误、解析异常等,确保程序的...
了解并实施这些策略有助于爬虫避开网站的限制,更有效地抓取数据。 最后,全书源码的附带使得读者可以直接运行和调试示例,加深对知识的理解。通过实践,读者可以逐步提升编写网络爬虫的能力,为日后开发复杂的爬虫...
通过JSoup,开发者可以解析和执行JavaScript代码,从而获取到原本隐藏或者动态生成的数据。 WebMagic是一个功能丰富的开源Java爬虫框架,其设计目标是简化爬虫的开发过程。WebMagic提供了自动化抽取和数据抽取的...
Java爬虫技术是一种用于自动化获取网页数据的编程方式,它能够帮助我们从互联网上抓取大量有用的信息。在这个项目中,我们使用了几个关键的Java库来实现对多个电商平台的价格爬取,包括HtmlUnit、Jsoup和HttpClient...
在这个压缩包中,很可能包含了用于构建Java爬虫的各种库和框架,这些资源可以帮助开发者快速搭建和实现自己的网络爬虫项目。下面将详细介绍几个关键的知识点和可能用到的库。 1. Jsoup:Jsoup是一个非常流行的Java...
7. **延迟加载和JavaScript处理**:现代网页大量使用JavaScript动态生成内容,这可能需要使用如Selenium WebDriver这样的工具,模拟浏览器执行JavaScript,获取完整页面内容。 8. **数据存储**:抓取的数据通常需要...
本项目“毕业设计-利用爬虫的题库自动生成系统”就是针对这一需求,采用现代编程语言和技术手段,如Java、Vue和JavaScript,构建了一套自动收集、整理和生成题目的系统。 首先,让我们深入了解一下Java。Java是一种...
这只是一个基础示例,实际的网络爬虫可能需要处理更复杂的网页结构,包括JavaScript动态加载的内容、分页、登录验证等。要实现这些功能,可能需要结合其他库,如Jsoup、Selenium等。 10. **扩展性与合规性**:在...
- HtmlUnit:无头浏览器,支持JavaScript,可以模拟浏览器执行JavaScript,用于抓取动态生成的内容。 - Apache HttpClient:提供HTTP客户端接口,支持多种HTTP方法如GET、POST,用于发送HTTP请求并接收响应。 - ...
静态网页爬虫,顾名思义,是专门针对不涉及动态交互、服务器端生成内容的网页进行数据抓取的工具。本项目是一个用Java编写的静态网页爬虫框架,特别适合初学者入门实践。 **Java 爬虫基础** Java作为一门面向对象...
7. **爬虫框架**:一些现成的Java爬虫框架,如`WebMagic`和`Colly`,提供了更高级的功能,如动态加载页面的支持、延迟加载、分布式爬取等。 8. **数据存储**:抓取的数据通常需要存储,这可能涉及数据库(如MySQL、...
4. **JSON(JavaScript Object Notation)**:API返回的数据格式通常为JSON,因为JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。开发者可以通过解析JSON响应来获取招聘信息。 5. *...