溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java爬蟲與python爬蟲對(duì)比哪個(gè)更簡(jiǎn)單

發(fā)布時(shí)間:2020-06-29 09:44:27 來(lái)源:億速云 閱讀:401 作者:清晨 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)java爬蟲與python爬蟲對(duì)比哪個(gè)更簡(jiǎn)單,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

java爬蟲與python爬蟲的對(duì)比:

python做爬蟲語(yǔ)法更簡(jiǎn)單,代碼更簡(jiǎn)潔。java的語(yǔ)法比python嚴(yán)格,而且代碼也更復(fù)雜

示例如下:

url請(qǐng)求:

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

正則表達(dá)式

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 repattern = re.compile(正則)
group = pattern.findall(字符串)

關(guān)于java爬蟲與python爬蟲對(duì)比哪個(gè)更簡(jiǎn)單就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI