关于java爬虫与python爬虫
2016-09-06 17:34
429 查看
前言
很多人说学习数据挖掘,先从爬虫入手。接触了大大小小的项目后,发现数据的获取是数据建模前的一项非常重要的活儿。在此,我需要先总结一些爬虫的流程,分别有python版的以及java版的。url请求
java版的代码如下:public String call (String url){ String content = ""; BufferedReader in = null; try{ URL realUrl = new URL(url); URLConnection connection = realUrl.openConnection(); connection.connect(); in = new BufferedReader(new InputStreamReader(connection.getInputStream(),"gbk")); String line ; while ((line = in.readLine()) != null){ content += line + "\n"; } }catch (Exception e){ e.printStackTrace(); } finally{ try{ if (in != null){ in.close(); } }catch(Exception e2){ e2.printStackTrace(); } } return content; }
python版的代码如下:
# coding=utf-8 import chardet import urllib2 url = "http://www.baidu.com" data = (urllib2.urlopen(url)).read() charset = chardet.detect(data) code = charset['encoding'] content = str(data).decode(code, 'ignore').encode('utf8') print content
正则表达式
java版的代码如下:public String call(String content) throws Exception { Pattern p = Pattern.compile("content\":\".*?\""); Matcher match = p.matcher(content); StringBuilder sb = new StringBuilder(); String tmp; while (match.find()){ tmp = match.group(); tmp = tmp.replaceAll("\"", ""); tmp = tmp.replace("content:", ""); tmp = tmp.replaceAll("<.*>", ""); sb.append(tmp + "\n"); } String comment = sb.toString(); return comment; } }
python的代码如下:
import re pattern = re.compile(正则) group = pattern.findall(字符串)
相关文章推荐
- 关于Java、Python、Go编程思想的不同
- java-爬虫部分:关于京东模拟登陆的两种实现
- python爬虫抓手机号+java客户端小程序
- python爬虫学习(1)--关于正则表达式输入和提取中文
- 网络爬虫Java还是Python还是c++?
- 关于Python爬虫程序scrapy的安装问题
- 关于C++,Java与Python的一点看法
- 关于的是python的爬虫
- 关于python爬虫的一点心得
- 关于A+B+C问题4种语言的解决办法,Java、C语言、C++、Python
- 关于java运行python脚本
- 关于使用Java实现的简单网络爬虫Demo
- 关于java开发、网络爬虫、自然语言处理、数据挖掘简介与关系小结
- 关于Python爬虫的书籍推荐
- Go学习笔记:关于Java、Python、Go编程思想的不同
- 关于C++,Java和Python中的随机数生成法
- 关于Python做爬虫的一点基础
- 爬虫 第三篇 (语言选择python还是java)
- python爬虫抓手机号+java客户端小程序3
- 关于加快python爬虫获取页面的方法