豆瓣爬蟲(chóng)大作業(yè):爬取某作者+作者標(biāo)簽+作品+作品標(biāo)簽+讀者info(主頁(yè)净神、birthplace、nickname溉委、加入日期)鹃唯、出生地統(tǒng)計(jì)、評(píng)論詞頻統(tǒng)計(jì)

大作業(yè)原話copyV●?●V

注:①由于電腦原因瓣喊,爬蟲(chóng)并未用多線程且安裝scrapy失敗坡慌,全程未用啥高級(jí)操作,基本是辛苦操作hhh

注:②部分代碼可能與簡(jiǎn)書(shū)作者“小黃的小憩站”類似藻三,因?yàn)槟鞘俏冶救撕殚伲詄mm..

第一部分:輸入你喜歡的中文作家名字,返回作家標(biāo)簽棵帽,主要作品及每部作品總標(biāo)簽數(shù)熄求、主要標(biāo)簽、短評(píng)數(shù)逗概、書(shū)評(píng)數(shù)

注:為縮短爬蟲(chóng)時(shí)間弟晚,最好爬完前十幾本就停下吧hhh(會(huì)有提示是否繼續(xù)的操作)

第二部分:作者主要作品各前20位評(píng)論者個(gè)人頁(yè)面展示;

第三部分:以上羅列的第一部作品讀者情況的具體展示:

①讀者個(gè)人頁(yè)面仗谆、地址,nickname,加入時(shí)間(有些用戶未填地址)

注:每爬取10個(gè)讀者信息會(huì)提醒你是否能繼續(xù)指巡,建議最好爬取20-30個(gè),既不耗太多時(shí)間又能為②③的圖表繪制提供更詳實(shí)的數(shù)據(jù)

②讀者出生地豎狀圖
③讀者評(píng)論詞云+詞頻直方圖

要查看該作者其他書(shū)籍讀者情況 請(qǐng)將源代碼booknameList[0]與numsOfShortReview[0])//20中的0改為其他較小的數(shù)字隶垮。

#說(shuō)明:請(qǐng)勿搜索一些很冷門的作者或作品
import urllib
import re
import urllib.request
headers=("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36 SE 2.X MetaSr 1.0")
opener = urllib.request.build_opener()
opener.addheaders = [headers]
#將opener安裝為全局
urllib.request.install_opener(opener)

search=input('輸入你想搜索的作者(中文名):')
search=urllib.parse.quote(search)
print('https://book.douban.com/tag/'+str(search))
data3=urllib.request.urlopen('https://book.douban.com/tag/'+str(search)).read().decode("utf-8")

#構(gòu)建對(duì)應(yīng)作者作品的正則表達(dá)式
bookwebPattern='<h2 class="">\n\s\s\s\s\s\s\s\s\s\s\s\s\s\s<a href="(.*?)" title="'
bookweb=re.compile(bookwebPattern).findall(data3)

websOfBookReview=[]
numsOfShortReview=[]
booknameList=[]
flag='1'

print('該作者主要作品:')

#依次打印每部作品名稱及對(duì)應(yīng)標(biāo)簽
for i in bookweb:

    data4=urllib.request.urlopen(i).read().decode("utf-8")
    #構(gòu)建對(duì)應(yīng)作者特定作品名稱的正則表達(dá)式   
    booknamePattern='v:itemreviewed">(.*?)<'
    bookname=re.compile(booknamePattern).findall(data4)
    booknameList.append(bookname)
    print('書(shū)名:',bookname,i)    
    #構(gòu)建對(duì)應(yīng)作者特定作品標(biāo)簽的正則表達(dá)式    
    certainBookTagPattern='tag" href="/tag/(.*?)">'
    certainBookTag=re.compile(certainBookTagPattern).findall(data4)
    #構(gòu)建對(duì)應(yīng)作者特定作品總標(biāo)簽數(shù)的正則表達(dá)式
    tagnumsPattern='豆瓣成員常用的標(biāo)簽(.*?)<'
    tagnums=re.compile(tagnumsPattern).findall(data4)
    print('總標(biāo)簽數(shù):',str(tagnums),'主要標(biāo)簽:',certainBookTag)
    #構(gòu)建對(duì)應(yīng)作者特定作品評(píng)論網(wǎng)頁(yè)的正則表達(dá)式
    readerPattern='<a\shref="(.*?)">全部(.*?)條'
    reader=re.compile(readerPattern).findall(data4)
    #將幾部作品的讀者評(píng)論網(wǎng)頁(yè)記錄在websOfBookReview列表藻雪,待呈現(xiàn)完作者及主要作品的主要情況后再據(jù)需統(tǒng)計(jì)某幾部作品讀者情況
    websOfBookReview.append(reader[0][0])
    numsOfShortReview.append(reader[0][1])
    if len(booknameList)%10 and len(booknameList)>10:
        flag=input('want to stop analysizing more users? press 0 to quit else press 1:')
        if flag=='0':        
            break
    print('短評(píng)網(wǎng)頁(yè)+數(shù)量:',reader[0][0],reader[0][1],'書(shū)評(píng)數(shù)量:',reader[1][1],'\n')
for i in range(len(websOfBookReview)):
    print(booknameList[i],'前20位評(píng)論者個(gè)人頁(yè)面展示:')
    data5=urllib.request.urlopen(websOfBookReview[i]).read().decode("utf-8")
    bookname=re.compile(booknamePattern).findall(data4)
    #構(gòu)建對(duì)應(yīng)特定讀者個(gè)人主頁(yè)的正則表達(dá)式
    webOfCertainUserPattern='<a title=".*?"\shref="(.*?)>\s*?<img'
    webOfCertainUser=re.compile(webOfCertainUserPattern).findall(data5)
    print(webOfCertainUser)


numOfCountedUsers=0
addressList=[]
bookcomment=[]
num='1' #停止標(biāo)識(shí)符,當(dāng)覺(jué)得時(shí)間等的夠久了或收集的數(shù)據(jù)足夠多了就可輸入0以停止爬蟲(chóng)
print('以下為',booknameList[0],'讀者情況的具體展示,要查看該作者其他書(shū)籍讀者情況',\
      '請(qǐng)將源代碼booknameList[0]與numsOfShortReview[0])//20中的0改為其他較小的數(shù)字狸吞。\n')
for i in range(int(numsOfShortReview[0])//20):#①評(píng)論絕大多數(shù)為短評(píng)勉耀,因爬蟲(chóng)時(shí)間有限只考慮短評(píng)。②每個(gè)評(píng)論頁(yè)有20個(gè)用戶
    #③這里numsOfShortReview[0]指要對(duì)第一本書(shū)讀者進(jìn)行統(tǒng)計(jì)蹋偏,事實(shí)上numsOfShortReview[1]也行(對(duì)第二本書(shū)讀者進(jìn)行統(tǒng)計(jì))
    if num=='0':        
        break
    data5=urllib.request.urlopen(websOfBookReview[0]+'hot?p='+str(i)).read().decode("utf-8")
    bookname=re.compile(booknamePattern).findall(data5)
    #構(gòu)建對(duì)應(yīng)特定作品讀者評(píng)論的正則表達(dá)式
    commentPattern='<p class="comment-content">\s.*?\n.*?<span class="short">(.*?)<\/span>'
    comment=re.compile(commentPattern).findall(data5)
    bookcomment.append(comment)
    #構(gòu)建對(duì)應(yīng)特定讀者個(gè)人主頁(yè)的正則表達(dá)式
    webOfCertainUserPattern='<a title=".*?"\shref="(.*?)">\s*?<img '
    webOfCertainUserTemp=re.compile(webOfCertainUserPattern).findall(data5)
    
    for j in webOfCertainUserTemp:
        
        data6=urllib.request.urlopen(j).read().decode("utf-8")
        bookname=re.compile(booknamePattern).findall(data6)
        #構(gòu)建對(duì)應(yīng)特定讀者個(gè)人主頁(yè)居住地及加入日期的正則表達(dá)式
        InfoUserPattern='常居:&nbsp;<a href=".*?>(.*?)<\/a>.*?\n\n.*?class.*?>(.*?)<.*?>(.*?)<\/div>'
        InfoUser=re.compile(InfoUserPattern).findall(data6)
        print('讀者個(gè)人頁(yè)面:',j,'地址,nickname,加入時(shí)間(有些用戶未填地址):',InfoUser)
        if InfoUser !=[]:
            addressList.append(InfoUser[0][0])
            numOfCountedUsers+=1
        if numOfCountedUsers%10==0:
            num=input('want to stop analysizing more users? press 0 to quit else press 1:')
        if num=='0':        
            break
print("\n第二部分--已爬取讀者的常住地分布:(因時(shí)間關(guān)系部分讀者未爬故未統(tǒng)計(jì))")     

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
for item in set(addressList):
    print('nums of',item,':',addressList.count(item))

# 中文和負(fù)號(hào)的正常顯示
matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑體顯示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常顯示負(fù)號(hào)

addressDataFrame=pd.Series(addressList)
addressDataFrame=addressDataFrame.value_counts().sort_values(ascending=False)
#當(dāng)讀者太多便斥,出生地址太多時(shí),去頻率最高的前20個(gè)進(jìn)行展示
if len(addressDataFrame)<20:
    pass
else:
    addressDataFrame=addressDataFrame[1:20]
plt.xticks(rotation=90)
plt.bar(addressDataFrame.index,addressDataFrame)
plt.show()

print('\n第三部分--對(duì)',str(booknameList[0]),'的評(píng)論詞頻統(tǒng)計(jì):')
from wordcloud import WordCloud,ImageColorGenerator
import  matplotlib.pyplot as plt
from scipy.misc import imread
import jieba
import jieba.analyse
import os, codecs
from collections import Counter
tags = jieba.analyse.extract_tags(str(bookcomment), topK=100, withWeight=False)
text =" ".join(tags)
# text = unicode(text)

#讀入背景圖片
bj_pic=imread('ciyun.jpg')

#生成詞云(通常字體路徑均設(shè)置在C:\\Windows\\Fonts\\也可自行下載)
font=r'C:\\Windows\\Fonts\\STFANGSO.ttf'#不加這一句顯示口字形亂碼  ""報(bào)錯(cuò) 
wordcloud=WordCloud(mask=bj_pic,background_color='white',font_path=font,scale=3.5).generate(text)
  #img_color = ImageColorGenerator(self.img)
image_colors=ImageColorGenerator(bj_pic)
#顯示詞云

plt.imshow(wordcloud)
plt.axis('off')
plt.show()

wordcloud.to_file('test.jpg')

#詞頻統(tǒng)計(jì)

seg_list = jieba.cut(str(bookcomment))
c = Counter()
for x in seg_list:
    if len(x)>1 and x != '\r\n':
        c[x] += 1
hotWordIntext=[]
hotWordNumIntext=[]
for (k,v) in c.most_common(20):
    hotWordIntext.append(k)
    hotWordNumIntext.append(v)
hotWordIntextDataFrame=pd.DataFrame(hotWordNumIntext,index=hotWordIntext,columns=['nums'])
#當(dāng)讀者太多威始,出生地址太多時(shí)枢纠,去頻率最高的前20個(gè)進(jìn)行展示
print('熱點(diǎn)詞頻度統(tǒng)計(jì)結(jié)果(只顯示前20)')
plt.xticks(rotation=90)
plt.bar(hotWordIntextDataFrame.index,hotWordIntextDataFrame.nums)
plt.show()    

bookcomment=[]
hotWordIntext=[]
hotWordNumIntext=[]
addressList=[]
websOfBookReview=[] #為防止下次冗余而特地清空評(píng)論網(wǎng)頁(yè)列表
booknameList=[]
numsOfShortReview=[]
輸入你想搜索的作者(中文名):金庸
https://book.douban.com/tag/%E9%87%91%E5%BA%B8
該作者主要作品:
書(shū)名: ['天龍八部'] https://book.douban.com/subject/1255625/
總標(biāo)簽數(shù): ['(共1616個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '天龍八部', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '中國(guó)文學(xué)', '中國(guó)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1255625/comments/  11030  書(shū)評(píng)數(shù)量:  714  

書(shū)名: ['笑傲江湖(全四冊(cè))'] https://book.douban.com/subject/1002299/
總標(biāo)簽數(shù): ['(共1572個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '笑傲江湖', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '中國(guó)', '中國(guó)文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1002299/comments/  10109  書(shū)評(píng)數(shù)量:  542  

書(shū)名: ['神雕俠侶'] https://book.douban.com/subject/1255624/
總標(biāo)簽數(shù): ['(共1384個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '神雕俠侶', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '愛(ài)情', '中國(guó)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1255624/comments/  7751  書(shū)評(píng)數(shù)量:  388  

書(shū)名: ['射雕英雄傳(全四冊(cè))'] https://book.douban.com/subject/1044547/
總標(biāo)簽數(shù): ['(共933個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '射雕英雄傳', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '中國(guó)', '中國(guó)文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1044547/comments/  4547  書(shū)評(píng)數(shù)量:  388  

書(shū)名: ['鹿鼎記(全五冊(cè))'] https://book.douban.com/subject/1212893/
總標(biāo)簽數(shù): ['(共828個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '鹿鼎記', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '韋小寶', '中國(guó)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1212893/comments/  3540  書(shū)評(píng)數(shù)量:  268  

書(shū)名: ['倚天屠龍記(共四冊(cè))'] https://book.douban.com/subject/1070851/
總標(biāo)簽數(shù): ['(共795個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '倚天屠龍記', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '中國(guó)', '中國(guó)文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1070851/comments/  3887  書(shū)評(píng)數(shù)量:  212  

書(shū)名: ['金庸作品集'] https://book.douban.com/subject/2218216/
總標(biāo)簽數(shù): ['(共181個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '經(jīng)典', '武俠小說(shuō)', '金庸作品集', '小說(shuō)', '中國(guó)文學(xué)', '文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/2218216/comments/  1023  書(shū)評(píng)數(shù)量:  82  

書(shū)名: ['金庸全集'] https://book.douban.com/subject/3532347/
總標(biāo)簽數(shù): ['(共148個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '小說(shuō)', '武俠小說(shuō)', '經(jīng)典', '金庸全集', '三聯(lián)', '中國(guó)文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/3532347/comments/  667  書(shū)評(píng)數(shù)量:  27  

書(shū)名: ['倚天屠龍記'] https://book.douban.com/subject/1789841/
總標(biāo)簽數(shù): ['(共567個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '小說(shuō)', '武俠小說(shuō)', '倚天屠龍記', '經(jīng)典', '中國(guó)', '中國(guó)文學(xué)']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/1789841/comments/  3415  書(shū)評(píng)數(shù)量:  189  

書(shū)名: ['金庸江湖志'] https://book.douban.com/subject/27025043/
總標(biāo)簽數(shù): ['(共27個(gè))'] 主要標(biāo)簽: ['金庸', '隨筆', '類別/文學(xué)評(píng)論', '作家/劉勃', '武俠', '文學(xué)', '武評(píng)', '文學(xué)雜論']
短評(píng)網(wǎng)頁(yè)+數(shù)量: https://book.douban.com/subject/27025043/comments/  35  書(shū)評(píng)數(shù)量:  1  

書(shū)名: ['金庸師承考'] https://book.douban.com/subject/27025053/
總標(biāo)簽數(shù): ['(共27個(gè))'] 主要標(biāo)簽: ['金庸', '武俠', '考據(jù)', '文學(xué)', '隨筆', '文學(xué)雜論', '傳記', '2017']
want to stop analysizing more users? press 0 to quit else press 1:0
['天龍八部'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/Q598176297/"', 'https://www.douban.com/people/andy.L/"', 'https://www.douban.com/people/48569791/"', 'https://www.douban.com/people/RongFuYiTai6/"', 'https://www.douban.com/people/hovialy/"', 'https://www.douban.com/people/thinkingmind/"', 'https://www.douban.com/people/esunchien/"', 'https://www.douban.com/people/zhoukang/"', 'https://www.douban.com/people/Uroboros/"', 'https://www.douban.com/people/llll916/"', 'https://www.douban.com/people/35683587/"', 'https://www.douban.com/people/luxiaobao/"', 'https://www.douban.com/people/haha65ma/"', 'https://www.douban.com/people/Jerry-feng/"', 'https://www.douban.com/people/teenspiritkkl/"', 'https://www.douban.com/people/otaku_not_in/"', 'https://www.douban.com/people/amoyi04/"', 'https://www.douban.com/people/putengfei/"', 'https://www.douban.com/people/samantha61272/"', 'https://www.douban.com/people/luxifaer/"']
['笑傲江湖(全四冊(cè))'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/cxmin/"', 'https://www.douban.com/people/Uroboros/"', 'https://www.douban.com/people/DreamerWang/"', 'https://www.douban.com/people/yamamaya/"', 'https://www.douban.com/people/tzy608/"', 'https://www.douban.com/people/guo77/"', 'https://www.douban.com/people/liubinyan/"', 'https://www.douban.com/people/hexiaoqin/"', 'https://www.douban.com/people/60619603/"', 'https://www.douban.com/people/thinkingmind/"', 'https://www.douban.com/people/dancebaby/"', 'https://www.douban.com/people/floatingmeat/"', 'https://www.douban.com/people/3200262/"', 'https://www.douban.com/people/x3df16/"', 'https://www.douban.com/people/woaiyaya/"', 'https://www.douban.com/people/ashinstancy/"', 'https://www.douban.com/people/dingxu/"', 'https://www.douban.com/people/Hamlet-Luang/"', 'https://www.douban.com/people/nettoyer/"', 'https://www.douban.com/people/audreyang/"']
['神雕俠侶'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/baiaige/"', 'https://www.douban.com/people/Uroboros/"', 'https://www.douban.com/people/yoyoyoyoyoyoyo/"', 'https://www.douban.com/people/Jerry-feng/"', 'https://www.douban.com/people/chenmodewan/"', 'https://www.douban.com/people/bcbulang/"', 'https://www.douban.com/people/feelvoice/"', 'https://www.douban.com/people/1915877/"', 'https://www.douban.com/people/graypick/"', 'https://www.douban.com/people/41696616/"', 'https://www.douban.com/people/lililalilila/"', 'https://www.douban.com/people/huanwen/"', 'https://www.douban.com/people/yuxiaofan/"', 'https://www.douban.com/people/Dathia_/"', 'https://www.douban.com/people/1002226/"', 'https://www.douban.com/people/100593744/"', 'https://www.douban.com/people/giverny/"', 'https://www.douban.com/people/river712/"', 'https://www.douban.com/people/Azeril/"', 'https://www.douban.com/people/diaoduoxi/"']
['射雕英雄傳(全四冊(cè))'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/angelicaljoe/"', 'https://www.douban.com/people/woqizhema/"', 'https://www.douban.com/people/36541079/"', 'https://www.douban.com/people/amsingapore/"', 'https://www.douban.com/people/huangrs555/"', 'https://www.douban.com/people/llll916/"', 'https://www.douban.com/people/131697546/"', 'https://www.douban.com/people/echobest/"', 'https://www.douban.com/people/panhan/"', 'https://www.douban.com/people/lingxiaxia/"', 'https://www.douban.com/people/houtouchong/"', 'https://www.douban.com/people/SlingXXXBlade/"', 'https://www.douban.com/people/pcissi/"', 'https://www.douban.com/people/ayida365/"', 'https://www.douban.com/people/Uroboros/"', 'https://www.douban.com/people/jfzj/"', 'https://www.douban.com/people/ztftom/"', 'https://www.douban.com/people/30574292/"', 'https://www.douban.com/people/lazycat_eva/"', 'https://www.douban.com/people/huangjingyun/"']
['鹿鼎記(全五冊(cè))'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/tanglu1110/"', 'https://www.douban.com/people/thinkingmind/"', 'https://www.douban.com/people/35819210/"', 'https://www.douban.com/people/bcbulang/"', 'https://www.douban.com/people/shanelean/"', 'https://www.douban.com/people/18606192/"', 'https://www.douban.com/people/4058013/"', 'https://www.douban.com/people/RongFuYiTai6/"', 'https://www.douban.com/people/tongchu/"', 'https://www.douban.com/people/Jerry-feng/"', 'https://www.douban.com/people/jokers/"', 'https://www.douban.com/people/melody1971/"', 'https://www.douban.com/people/172453309/"', 'https://www.douban.com/people/bighead/"', 'https://www.douban.com/people/jiegumu/"', 'https://www.douban.com/people/zishuiyilan/"', 'https://www.douban.com/people/szemm/"', 'https://www.douban.com/people/2922325/"', 'https://www.douban.com/people/jiajiaaixuexi/"', 'https://www.douban.com/people/CFJ/"']
['倚天屠龍記(共四冊(cè))'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/xyws/"', 'https://www.douban.com/people/2158612/"', 'https://www.douban.com/people/pixstones/"', 'https://www.douban.com/people/jfzj/"', 'https://www.douban.com/people/piaoliumutou/"', 'https://www.douban.com/people/51938915/"', 'https://www.douban.com/people/kianfish/"', 'https://www.douban.com/people/charlizheng/"', 'https://www.douban.com/people/moniang/"', 'https://www.douban.com/people/toamo/"', 'https://www.douban.com/people/4295926/"', 'https://www.douban.com/people/asoloman/"', 'https://www.douban.com/people/ztftom/"', 'https://www.douban.com/people/jeffersontang/"', 'https://www.douban.com/people/knoppix/"', 'https://www.douban.com/people/neverecho/"', 'https://www.douban.com/people/Uroboros/"', 'https://www.douban.com/people/kkdolphin/"', 'https://www.douban.com/people/yuxiaofan/"', 'https://www.douban.com/people/18606192/"']
['金庸作品集'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/yoyoyoyoyoyoyo/"', 'https://www.douban.com/people/memotown07/"', 'https://www.douban.com/people/QianMinjie/"', 'https://www.douban.com/people/46602436/"', 'https://www.douban.com/people/phoebejk/"', 'https://www.douban.com/people/carrie_j/"', 'https://www.douban.com/people/aibufen/"', 'https://www.douban.com/people/RYweiyang/"', 'https://www.douban.com/people/yobalcony/"', 'https://www.douban.com/people/2434887/"', 'https://www.douban.com/people/Rockyxx/"', 'https://www.douban.com/people/2282003/"', 'https://www.douban.com/people/tengyu/"', 'https://www.douban.com/people/queen_kw/"', 'https://www.douban.com/people/xuannov/"', 'https://www.douban.com/people/50275537/"', 'https://www.douban.com/people/JunoZ/"', 'https://www.douban.com/people/AnsonWan/"', 'https://www.douban.com/people/tttttgarden/"', 'https://www.douban.com/people/3017985/"']
['金庸全集'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/knoppix/"', 'https://www.douban.com/people/renshuangxia/"', 'https://www.douban.com/people/luhua/"', 'https://www.douban.com/people/35819210/"', 'https://www.douban.com/people/kevindreamfly/"', 'https://www.douban.com/people/yamamaya/"', 'https://www.douban.com/people/liveonnoevil/"', 'https://www.douban.com/people/Reuenthal/"', 'https://www.douban.com/people/luoxr/"', 'https://www.douban.com/people/abracadebraie/"', 'https://www.douban.com/people/bendao/"', 'https://www.douban.com/people/26425322/"', 'https://www.douban.com/people/mattviola/"', 'https://www.douban.com/people/luchun/"', 'https://www.douban.com/people/53072535/"', 'https://www.douban.com/people/RYweiyang/"', 'https://www.douban.com/people/youyv/"', 'https://www.douban.com/people/xiaoxinzei/"', 'https://www.douban.com/people/137573685/"', 'https://www.douban.com/people/2691728/"']
['倚天屠龍記'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/ilovelittlesnow/"', 'https://www.douban.com/people/joyjoy2/"', 'https://www.douban.com/people/Ixtab/"', 'https://www.douban.com/people/thinkingmind/"', 'https://www.douban.com/people/ranwei/"', 'https://www.douban.com/people/ekisyou/"', 'https://www.douban.com/people/PomBom/"', 'https://www.douban.com/people/jiegumu/"', 'https://www.douban.com/people/yimihai/"', 'https://www.douban.com/people/poltergeist/"', 'https://www.douban.com/people/1884631/"', 'https://www.douban.com/people/51549032/"', 'https://www.douban.com/people/panhan/"', 'https://www.douban.com/people/naocanqiang/"', 'https://www.douban.com/people/feelvoice/"', 'https://www.douban.com/people/56500125/"', 'https://www.douban.com/people/melody1971/"', 'https://www.douban.com/people/reaplay/"', 'https://www.douban.com/people/Q598176297/"', 'https://www.douban.com/people/Erman-Wei/"']
['金庸江湖志'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/39008769/"', 'https://www.douban.com/people/huanwen/"', 'https://www.douban.com/people/29007604/"', 'https://www.douban.com/people/45074177/"', 'https://www.douban.com/people/kfcai/"', 'https://www.douban.com/people/renzicai/"', 'https://www.douban.com/people/yuyanlin/"', 'https://www.douban.com/people/BenGlen/"', 'https://www.douban.com/people/jeanky/"', 'https://www.douban.com/people/kergee/"', 'https://www.douban.com/people/3195337/"', 'https://www.douban.com/people/47241007/"', 'https://www.douban.com/people/43707842/"', 'https://www.douban.com/people/33230145/"', 'https://www.douban.com/people/61452683/"', 'https://www.douban.com/people/122509122/"', 'https://www.douban.com/people/64155300/"', 'https://www.douban.com/people/evansey/"', 'https://www.douban.com/people/Natezhang/"', 'https://www.douban.com/people/148908017/"']
['金庸師承考'] 前20位評(píng)論者個(gè)人頁(yè)面展示:
['https://www.douban.com/people/45074177/"', 'https://www.douban.com/people/39008769/"', 'https://www.douban.com/people/jeanky/"', 'https://www.douban.com/people/67459918/"', 'https://www.douban.com/people/46610300/"', 'https://www.douban.com/people/2843196/"', 'https://www.douban.com/people/2294702/"', 'https://www.douban.com/people/rjbfq/"', 'https://www.douban.com/people/evansey/"', 'https://www.douban.com/people/68321623/"', 'https://www.douban.com/people/47241007/"', 'https://www.douban.com/people/64155300/"', 'https://www.douban.com/people/131615477/"', 'https://www.douban.com/people/156796942/"', 'https://www.douban.com/people/lovezone/"', 'https://www.douban.com/people/71538147/"', 'https://www.douban.com/people/158258095/"', 'https://www.douban.com/people/178349453/"', 'https://www.douban.com/people/woniuzailushang/"', 'https://www.douban.com/people/162614038/"']
以下為 ['天龍八部'] 讀者情況的具體展示,要查看該作者其他書(shū)籍讀者情況 請(qǐng)將源代碼booknameList[0]與numsOfShortReview[0])//20中的0改為其他較小的數(shù)字。

讀者個(gè)人頁(yè)面: https://www.douban.com/people/Q598176297/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('廣東廣州', 'Q598176297 ', ' 2012-04-24加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/andy.L/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', 'andy.L ', ' 2008-08-03加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/48569791/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('西藏山南', '48569791 ', ' 2011-01-04加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/RongFuYiTai6/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('Atlanta, United States', 'RongFuYiTai6 ', ' 2009-12-09加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/hovialy/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('Seattle, United States', 'hovialy ', ' 2006-11-24加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/thinkingmind/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'thinkingmind ', ' 2011-08-07加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/esunchien/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'esunchien ', ' 2007-10-14加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/zhoukang/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('Roma, Italy', 'zhoukang ', ' 2006-03-08加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/Uroboros/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('Dublin (Baile átha Cliath), Ireland', 'Uroboros ', ' 2009-03-25加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/llll916/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'llll916 ', ' 2007-02-04加入')]
want to stop analysizing more users? press 0 to quit else press 1:1
讀者個(gè)人頁(yè)面: https://www.douban.com/people/35683587/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', '35683587 ', ' 2010-02-22加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/luxiaobao/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', 'luxiaobao ', ' 2009-11-19加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/haha65ma/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'haha65ma ', ' 2009-10-28加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/Jerry-feng/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'Jerry-feng ', ' 2011-01-17加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/teenspiritkkl/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'teenspiritkkl ', ' 2007-12-12加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/otaku_not_in/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'otaku_not_in ', ' 2010-10-07加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/amoyi04/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('P&#39;y?ngyang, North Korea', 'amoyi04 ', ' 2010-04-03加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/putengfei/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'putengfei ', ' 2008-12-03加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/samantha61272/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'samantha61272 ', ' 2008-11-17加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/luxifaer/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'luxifaer ', ' 2009-05-18加入')]
want to stop analysizing more users? press 0 to quit else press 1:1
讀者個(gè)人頁(yè)面: https://www.douban.com/people/jeffersontang/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', 'jeffersontang ', ' 2011-05-24加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/sungdebbie/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('廣東廣州', 'sungdebbie ', ' 2007-05-29加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/59291955/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', '59291955 ', ' 2012-03-08加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/jinduoduo/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('湖北神農(nóng)架林區(qū)', 'jinduoduo ', ' 2009-04-09加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/DeadWalker/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'DeadWalker ', ' 2008-01-24加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/naocanqiang/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('London, United Kingdom', 'naocanqiang ', ' 2006-03-18加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/tongchu/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('北京', 'tongchu ', ' 2005-08-22加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/sophielikeit/ 地址,nickname,加入時(shí)間(有些用戶未填地址): []
讀者個(gè)人頁(yè)面: https://www.douban.com/people/suev/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('Ciudad de Panamá, Panama', 'suev ', ' 2009-05-12加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/oranjeruud/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', 'oranjeruud ', ' 2008-10-05加入')]
讀者個(gè)人頁(yè)面: https://www.douban.com/people/sephiroth_fool/ 地址,nickname,加入時(shí)間(有些用戶未填地址): [('上海', 'sephiroth_fool ', ' 2007-10-28加入')]
want to stop analysizing more users? press 0 to quit else press 1:0

第二部分--已爬取讀者的常住地分布:(因時(shí)間關(guān)系部分讀者未爬故未統(tǒng)計(jì))
nums of 西藏山南 : 1
nums of Ciudad de Panamá, Panama : 1
nums of 湖北神農(nóng)架林區(qū) : 1
nums of 北京 : 13
nums of Seattle, United States : 1
nums of London, United Kingdom : 1
nums of Dublin (Baile átha Cliath), Ireland : 1
nums of 上海 : 6
nums of Roma, Italy : 1
nums of 廣東廣州 : 2
nums of P&#39;y?ngyang, North Korea : 1
nums of Atlanta, United States: 1
小黃只踩了一部分人樣黎棠,有時(shí)間的話您可以貼下代碼盡情采樣玩玩哈晋渺,但要注意url換頁(yè)時(shí)page的規(guī)律性變化
第三部分--對(duì) ['天龍八部'] 評(píng)論的‘熱點(diǎn)詞頻’統(tǒng)計(jì):


C:\Users\lenovo\Anaconda3\lib\site-packages\ipykernel_launcher.py:135: DeprecationWarning: `imread` is deprecated!
`imread` is deprecated in SciPy 1.0.0, and will be removed in 1.2.0.
Use ``imageio.imread`` instead.
本來(lái)想變成胡歌的樣子镰绎,但發(fā)現(xiàn)老胡圖像變糊了,就改成很common的愛(ài)心狀hhh
熱點(diǎn)詞頻度統(tǒng)計(jì)結(jié)果(只顯示前20)
效果真差木西。畴栖。。還是去掉不少虛詞的八千。吗讶。。

可見(jiàn)詞云統(tǒng)計(jì)還是比熱點(diǎn)詞頻統(tǒng)計(jì)(其實(shí)也運(yùn)用某種手段去除了常見(jiàn)的虛詞)準(zhǔn)很多的嘿嘿嘿

選題思路+爬坑感想

選題原因:1-難度最大 2-未來(lái)想從事 量化交易恋捆,爬取金融數(shù)據(jù)是basic skills 3-這項(xiàng)技能的實(shí)用性太吸引人啦

坑點(diǎn):

1-學(xué)習(xí)sources的難度:網(wǎng)絡(luò)資料較零散照皆,很多作者直接貼代碼,闡述原理不清楚鸠信;圖書(shū)館相關(guān)資料被借走纵寝,系統(tǒng)翻閱書(shū)籍困難

2-剛學(xué)爬蟲(chóng)時(shí)有些視頻爬嗶哩嗶哩,但動(dòng)態(tài)網(wǎng)頁(yè)很多東東顯式的與視頻里的有出入星立,這樣延緩了學(xué)習(xí)進(jìn)度

3-正則表達(dá)式有丟丟煩爽茴,心情煩亂時(shí)看著別扭

4-道高一尺魔高一丈,反爬蟲(chóng)機(jī)制讓人痛苦绰垂。室奏。。豆瓣不少網(wǎng)頁(yè)要求登錄劲装,參考不少博客知乎的內(nèi)容也不適用

5-詞頻統(tǒng)計(jì)總是會(huì)有很多虛詞做干擾項(xiàng)胧沫,網(wǎng)上的不少方法效果不佳

過(guò)坑小tricks:

1-先在萬(wàn)門聽(tīng)老師系統(tǒng)講幾個(gè)案例,邊聽(tīng)邊實(shí)操占业,再?gòu)V讀博文绒怨,累積到一定量后快速甄別每篇博文的可取、不可取處

2-regex101是正則表達(dá)式的超級(jí)校驗(yàn)利器

3-豆瓣有些網(wǎng)頁(yè)要登陸谦疾,有些不要南蹂,但好在尋找圖書(shū)可在總頁(yè)面找也可專門在豆瓣讀書(shū)的頁(yè)面找,多逛豆瓣念恍,尋找合適的豆瓣網(wǎng)頁(yè)使得不登陸也能爬取同樣內(nèi)容

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末六剥,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子峰伙,更是在濱河造成了極大的恐慌疗疟,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瞳氓,死亡現(xiàn)場(chǎng)離奇詭異策彤,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門店诗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)叽赊,“玉大人,你說(shuō)我怎么就攤上這事必搞。” “怎么了囊咏?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵恕洲,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我梅割,道長(zhǎng)霜第,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任户辞,我火速辦了婚禮泌类,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘底燎。我一直安慰自己刃榨,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布双仍。 她就那樣靜靜地躺著枢希,像睡著了一般。 火紅的嫁衣襯著肌膚如雪朱沃。 梳的紋絲不亂的頭發(fā)上苞轿,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音逗物,去河邊找鬼搬卒。 笑死,一個(gè)胖子當(dāng)著我的面吹牛翎卓,可吹牛的內(nèi)容都是我干的契邀。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼莲祸,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蹂安!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起锐帜,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤田盈,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后缴阎,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體允瞧,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了述暂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片痹升。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖畦韭,靈堂內(nèi)的尸體忽然破棺而出疼蛾,到底是詐尸還是另有隱情,我是刑警寧澤艺配,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布察郁,位于F島的核電站,受9級(jí)特大地震影響转唉,放射性物質(zhì)發(fā)生泄漏皮钠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一赠法、第九天 我趴在偏房一處隱蔽的房頂上張望麦轰。 院中可真熱鬧,春花似錦砖织、人聲如沸款侵。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)喳坠。三九已至,卻和暖如春茂蚓,著一層夾襖步出監(jiān)牢的瞬間壕鹉,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工聋涨, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晾浴,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓牍白,卻偏偏與公主長(zhǎng)得像脊凰,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子茂腥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,071評(píng)論 25 707
  • 用兩張圖告訴你狸涌,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 12,712評(píng)論 2 59
  • 爬蟲(chóng)文章 in 簡(jiǎn)書(shū)程序員專題: like:128 - Python 爬取落網(wǎng)音樂(lè) like:127 - 【圖文詳...
    treelake閱讀 29,549評(píng)論 33 638
  • 我們的距離 在屏幕外 是遙遠(yuǎn)又很近 每一個(gè)星夜 是你的語(yǔ)言在點(diǎn)燈 可卻看不到你的模樣 或許最岗,你在 工作 聊天…… ...
    靜溪軒閱讀 132評(píng)論 0 0
  • 逝去的光陰不可追溯帕胆, 陪你走一程的人不可留戀。 不得不承認(rèn)般渡, 我們一邊得到一邊失去懒豹, 永遠(yuǎn)也不會(huì)知道結(jié)局的盈或虧芙盘。...
    野派閱讀 148評(píng)論 0 2