- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在Java 程序在解析HTML 文档时,大家应该晓得htmlparser 这个开源项目,我也是使用过,不过这个程序到了2006年就没有更新了。由于我的基础较差,对于扩展自定义的标签还是不太懂,还是有超时问题困扰,偶然的机会中发现有jsoup,而且更新到了1.72版,使用起来还是很容易上手的。下面写些使用心得:
? ? ? ??jsoup?is a Java library for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of DOM, CSS, and jquery-like methods.
? ? ? ?jsuop是一款java的html解析器,提供一套非常省力的API,通过dom模型css和类似于jquery的方式来获取和操作数据。
? ? ? 功能:1.解析一个Html文档,2.解析一个body片段
? ? ? ?
Java代码??
String?html?=?htmlheadtitleFirst?parse/title/head??
??+?bodypParsed?HTML?into?a?doc./p/body/html;??
Document?doc?=?Jsoup.parse(html);//分析文档,使用doc.toString()可以转为文本??
Element?body=doc.body();//获取body片段,使用body.toString()可以转为文本??
? ? ?
? ? ? 获取方式:1.从本地文件加载 ? 2.根据url地址获取
?
? ? ?
Java代码??
/**使用静态?Jsoup.parse(File?in,?String?charsetName,?String?baseUri)?方法?
?*其中baseUri参数用于解决文件中URLs是相对路径的问题。?
?*如果不需要可以传入一个空的字符串。?
?*/??
File?input?=?new?File(/tmp/input.html);??
Document?doc?=?Jsoup.parse(input,?UTF-8,?/);??
??
Java代码??
/**?
?*根据url直接获取内容,可以加入超时,get方法不行,就用post方法?
?*我在实际应用中,出现404,405,504等错误信息?
?*将get改为post就可以,或者反过来改?
?*如果等以后弄明白了,再来解释清楚?
?*/??
Document?doc1?=?Jsoup.connect(/).get();??
String?title?=?doc1.title();?//获取网页的标题??
String?content=doc1.toString();//将网页转为文本??
??
Document?doc2?=?Jsoup.connect()??
??.data(query,?Java)//请求参数??
??.userAgent(Mozilla)//设置urer-agent??
??.cookie(auth,?token)//设置cookie??
??.timeout(50000)//设置连接超时??
??.post();//或者改为get??
经过我的测试使用,jsoup分析网页结构和内容的功能远远强大于HtmlParser,无论是获取整个页面的文本,还是分析特定内容的网页结构,都是十分的方便。
?
? ? ? ? 附上链接:jsoup官网:/?,中文jsoup:/jsoup/
? ? ?下面写些我的使用记录,希望大家如果能从我的方法中得到启发,鉴于本人从事开发工作不久,内容可能写的不是很好。
?
? ? ?jsoup数据获取有两大方法:1.通过分析dom模型的网页标签和元素,2.select元素选择器,类似jquery方式(功能很强大,还支持正则表达式)。网页tag标签有body,div,table,tr,td,a,等等。元素的属性有,href,title,width,height,color等等,元素属性的值就是,例如:href=“”, 值就是 。width=“98%” 值就是98%
? ? ?
? ? ? 下面就以分析首页的每日资讯为例,抓取每日资讯的标题和url地址,详细写出分析步骤:
?
? ? ???1.用chrome浏览器的元素审查,分析页面的结构,得到每日资讯是div class=main_left层里面?
? ???2.写程序分析,首先根据url获取div文本,再来根据文本对内容进行分析
?
Ja
您可能关注的文档
- 2016年度贵州公需科目大数据培训考试试题及参考答案.doc
- 2016年度辽宁下半年度辽宁教师资格结构化面试之综合分析类.doc
- 2016年度郑州经开区招教考试笔试时间.doc
- 2016年注会考试公司战略与风险管理分析—公司治理.doc
- 2016年清华大学经济管理学院金融专硕考研复习攻略[周xx].doc
- 2016年湖北省“提升工程”远程培训在线测试题[满分卷].docx
- 2016年湖北省《提升工程》远程培训在线测试题-2.docx
- 2016年湖北省《提升工程》远程培训在线测试题一.doc
- 2016年湖北省《提升工程》远程培训在线测试题8.doc
- 2016年继续教育公共课考试试卷及答案[一].doc
文档评论(0)