Jsoup解析html的一些使用技巧
来源:互联网 发布:阿里云产品主要优势 编辑:程序博客网 时间:2024/05/16 02:53
前段时间确定了毕设,每天晚上花时间完善功能。
考虑到要异步解析html抓取数据,jsoup——json的使用模式是最方便了,html代码的提取方式不要太花式太强大~╮(╯▽╰)╭~
使用期间jsoup自带的解析url数据有点慢,异步线程如下:
private Document doc; @Override protected Document doInBackground(String... params) { Date startdate=new Date(); try { doc=Jsoup.connect(params[0]).timeout(5000).get(); } catch (IOException e) { e.printStackTrace(); } Date enddate=new Date(); Long time=enddate.getTime()-startdate.getTime(); Log.e("使用连接耗时==",""+time); return doc; }
测试:
个人感觉可能是api太繁冗,后来想了一下还是自己写http解析:
private String strAll;@Overrideprotected String doInBackground(String... params) {Date startdate=new Date();strAll = new HttpURLconn().httpURLconn(url);Date enddate=new Date();Long time=enddate.getTime()-startdate.getTime(); Log.e("使用连接耗时==",""+time); return strAll;}
异步改为~
private String strAll;@Overrideprotected String doInBackground(String... params) {Date startdate=new Date();strAll = new HttpURLconn().httpURLconn(url);Date enddate=new Date();Long time=enddate.getTime()-startdate.getTime(); Log.e("使用连接耗时==",""+time); return strAll;}
测试:
好吧,白天上班一不小心还得加班...晚上补功能实在没精力去深究了,这里记录一下有时间了要得到why,能有大神点明一下就更好了~还有jsoup可一行代码往服务器post数据,挺方便,有兴趣的哥们可以深入研究~
继续~得到解析的html代码,转为Document,规范、补全解析格式。
Document doc =Jsoup.parse(result);
中文开发指南:http://www.open-open.com/jsoup/
这里用www.ip138.com里的身份验证做例子,
异步获取html代码结束
@Overrideprotected void onPostExecute(String result) {if(result!=null){Document doc2 =Jsoup.parse(result);//选择html中的第四个table标签里的所有<tr>标签对Elements select = doc2.select("table").eq(4).select("tr");List<String> list = new ArrayList<String>();for (Element element : select) {String text = element.getElementsByTag("td").text();Log.e("text", ""+text);}//Log.e("if_out","list0:"+list.get(0));//Log.e("if_out","list1:"+list.get(1));//Log.e("if_out","list2:"+list.get(3));}}
得到
随意网上找的一个身份证号,可以看到第三个td对是空的,这在取数据的时候要注意,最好每一行都能打印出来~
别忘记访问网络的权限~
最后,异步线程的学习资料网上很多,推荐郭神的良心博客:http://blog.csdn.net/guolin_blog/article/details/11711405
记录,共勉!
0 0
- Jsoup解析html的一些使用技巧
- 使用Jsoup解析html
- 使用Jsoup解析Html
- 使用Jsoup解析Html
- 使用Jsoup解析Html
- 关于Jsoup使用的一些小技巧
- Html解析之Jsoup的使用
- HTML解析库--Jsoup的基本使用
- Andriod使用Jsoup解析Html
- 使用Jsoup解析HTML页面
- Jsoup解析HTML+Debug使用
- 使用Jsoup解析HTML页面
- 使用Jsoup解析html网页
- 使用Jsoup解析html网页
- 使用jsoup解析html页面
- 使用Jsoup解析html文件
- 使用JSoup解析HTML文件
- 使用JSOUP解析HTML文档
- Failed to read row 0, column -1 from a CursorWindow which h
- Android--数据传递
- C语言深度解剖——跟程序员有关
- 20个 Unix/Linux 命令技巧
- 飞鸽传书源码分析四-消息发送
- Jsoup解析html的一些使用技巧
- 【字符串】KMP算法
- 解决php-memcache set,用python-memcache get报错的问题
- 【C语言】编写一个程序从标准输入读取字符,并把他们写到标准输出。除了大写字母转换成小写字母之外,其他的原样输出。
- 测试网络是否连接
- java中字符串快速追加
- 动作识别之STIP (Space-Time Interest Points)(一)
- MATLAB神经网络编程(三)——线性神经网络的构建与实现
- 改编的一份JAVA代码行数统计的代码