Python學習日記13|利用python制作簡書首頁熱門文章關鍵詞標簽云

今天是6.16號蔓姚。

昨天去面越秀金融風險控制部計算機實習生卓囚,去面了才知道主要也就是做數據抓取這一塊簿盅。面試過程中有問到分詞轧拄,然后自己心虛的說了有接觸過分詞這一塊揽祥,面試結果就不去想了,過不過都其實不重要了檩电。此外還有問到:你覺得實習和項目的經歷最大的收獲是什么拄丰?你想從這份實習中收獲什么府树?你覺得自己最大的優(yōu)勢和缺點是什么?這些問題在9月份的求職生活中應該還會遇到的料按。

趁現在有時間奄侠,然后看知乎又看到了圖片云的一篇文章,其中還涉及到了結巴分詞的使用站绪,所以決定這兩天好好研究一下怎么使用遭铺。然后找一個問題來分析丽柿,并得到最終的結果恢准,本來想找學校BBS里面的帖子主體進行分析,但打開簡書來寫時甫题,想想用簡書首頁的熱門文章來分析也不錯馁筐。

代碼是6.16號運行的,但簡書首頁每天都在更新坠非,所以最終得到的云標簽會與其他時間運行得到的結果有所差異敏沉,但主要的核心還是掌握在實現過程中會涉及到的知識點:
1.異步加載;(往下拉時需要點擊顯示更多才會出現新的文章)
2.分詞炎码;
3.標簽云盟迟。


一、異步加載
一般異步加載出來的頁面都可以在chrome瀏覽器下的network中找到規(guī)律潦闲,簡書中點擊“點擊查看更多后”可以在network中看到一個xhr文件攒菠,然后可以從headers里面直接看到新加載出來的頁面的網址。

1.png

二歉闰、分詞
三辖众、標簽云

最后貼上代碼:


第一部分:抓取首頁上熱門標簽下所有文章的標題
自己試了一下,簡書首頁熱門標簽文章點擊查看更多最多也只能加載10頁和敬。
#!/usr/bin/env python
# * coding: utf-8 *

import requests
from bs4 import BeautifulSoup
import re
import time
from multiprocessing import Pool

start_url='http://www.reibang.com/'
host='http://www.reibang.com'
headers={
    'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Accept-Encoding':'gzip, deflate, sdch',
    'Accept-Language':'zh-CN,zh;q=0.8',
    'Cache-Control':'max-age=0',
    'Connection':'keep-alive',
    'Cookie':'read_mode=day; default_font=font2; __utmt=1; Hm_lvt_0c0e9d9b1e7d617b3e6842e85b9fb068=1466054262,1466057911,1466057983,1466064672; Hm_lpvt_0c0e9d9b1e7d617b3e6842e85b9fb068=1466065361; __utma=194070582.1669649852.1452758384.1466054263.1466064585.135; __utmb=194070582.12.10.1466064585; __utmc=194070582; __utmz=194070582.1466054263.134.11.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; __utmv=194070582.|2=User%20Type=Member=1; _session_id=amhxY2NtUENjQXdkMS9JRStlc0ZvV0RaaU96TXZrZ3pkK0Ewc280cmtQcHdTTFNOWk1PcGRkVDc4YzVDOGJhT2xXMlFkakN4WHpBT1d4a3Z1bUJUbXc9PS0tTjg2UGQ0aWZjdTFsNmlCdmhYRThPdz09--363edd825b2b9f3fd9d52848169fe2829b4ad3a3',
    # 'Host':'www.reibang.com
    'If-None-Match':'W/"ab6ec19c0f005cad8d2c630dffbeb0a5"',
    'Referer':'http://www.reibang.com/',
    'Upgrade-Insecure-Requests':'1',
    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.93 Safari/537.36'
}

links=[start_url]
i=0
def get_all_links(url):
    web_data=requests.get(url,headers=headers)
    soup=BeautifulSoup(web_data.text,'lxml')
    if soup.find(attrs={'class':'load-more'}):
        link=str(soup.find(attrs={'class':'load-more'}))
        link1=host+re.findall(r'data-url="(.*?)"',link,re.M)[0]
        links.append(link1)
        time.sleep(1)
        if len(links)<=200:  #modify the number of page you want to scrapy
            global i
            i=i+1
            get_all_links(links[i])
    else:
        pass

def get_contents(url):
    web_data=requests.get(url,headers=headers)
    soup=BeautifulSoup(web_data.text,'lxml')
    titles=soup.select('h4.title a')
    authors=soup.select('a.author-name.blue-link')
    route1=r'C:\Users\guohuaiqi\Desktop\title.txt'
    route2=r'C:\Users\guohuaiqi\Desktop\author.txt'
    with open(route1,'a') as f:
        for i in titles:
            try:
                f.write(i.get_text())
            except UnicodeEncodeError:
                continue
    with open(route2,'a') as f1:
        for j in authors:
             try:
                f1.write(j.get_text()+'\n')
             except UnicodeEncodeError:
                continue

if __name__=='__main__':
    get_all_links(start_url)
    pool=Pool()
    pool.map(get_contents,links)
    print('All have done successfully!')

第二部分:對抓取下來的標題進行分詞
好幾個月了還沒有寫完凹炸,對分詞模塊還是有點不會用,后面有機會再去學習昼弟。

未完待續(xù)啤它。。舱痘。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末变骡,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子衰粹,更是在濱河造成了極大的恐慌锣光,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件铝耻,死亡現場離奇詭異誊爹,居然都是意外死亡蹬刷,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門频丘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來办成,“玉大人,你說我怎么就攤上這事搂漠∮芈” “怎么了?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵桐汤,是天一觀的道長而克。 經常有香客問我,道長怔毛,這世上最難降的妖魔是什么员萍? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮拣度,結果婚禮上碎绎,老公的妹妹穿的比我還像新娘。我一直安慰自己抗果,他們只是感情好筋帖,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著冤馏,像睡著了一般日麸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上宿接,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天赘淮,我揣著相機與錄音,去河邊找鬼睦霎。 笑死梢卸,一個胖子當著我的面吹牛,可吹牛的內容都是我干的副女。 我是一名探鬼主播蛤高,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼碑幅!你這毒婦竟也來了戴陡?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤沟涨,失蹤者是張志新(化名)和其女友劉穎恤批,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體裹赴,經...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡喜庞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年诀浪,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片延都。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡雷猪,死狀恐怖,靈堂內的尸體忽然破棺而出晰房,到底是詐尸還是另有隱情求摇,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布殊者,位于F島的核電站与境,受9級特大地震影響,放射性物質發(fā)生泄漏幽污。R本人自食惡果不足惜嚷辅,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望距误。 院中可真熱鬧,春花似錦扁位、人聲如沸准潭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刑然。三九已至,卻和暖如春暇务,著一層夾襖步出監(jiān)牢的瞬間泼掠,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工垦细, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留择镇,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓括改,卻偏偏與公主長得像腻豌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子嘱能,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,077評論 25 707
  • 發(fā)現 關注 消息 iOS 第三方庫吝梅、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,094評論 4 62
  • 這里省略1000+的字右冻,關于穿越設備穿扳,穿越步驟,及穿越過程的描述了国旷∶铮總之原理是,只能穿越到客觀存在的真實記憶里的時...
    風輕云淡的境界閱讀 234評論 1 0
  • 佛說:前世千百次的回眸,換來你我今生的擦肩而過屡久∫涫祝可是我前世積攢了多少回眸才能和你相識相知。 我在佛前苦苦求了幾千年...
    蘆薈柚子閱讀 683評論 2 5
  • 這是一個女孩和媽媽的故事被环。女孩的媽媽在整個家族里的地位非常低糙及,幾乎家族里所有的人包括她的爸爸都看不起她的媽媽,有時...
    衍一108閱讀 655評論 0 3