簡書文章標(biāo)題期吓、鏈接的爬取

??@繩系想爬取公眾號上的文章標(biāo)題早歇,可惜我不會。
??緊急惡補(bǔ)了一下爬取讨勤,試著寫了一個小程序箭跳,可以爬取繩系的簡書文章的標(biāo)題和鏈接。記錄一下過程潭千。

1谱姓、分析頁面結(jié)構(gòu)

??可以發(fā)現(xiàn)需要爬取的

  • 文章在<li>這個標(biāo)簽下,
  • <a>標(biāo)簽為標(biāo)題和鏈接刨晴,
  • <p>為文章摘要屉来,
  • 下面還有作者名字、點(diǎn)贊數(shù)等等割捅,

這里主要需要獲取標(biāo)題奶躯、摘要以及文章鏈接即可。

2亿驾、處理獲取到的文本

??爬蟲爬下來的是整個頁面的xml文本嘹黔,需要找到我們所需要的東西還得經(jīng)過處理才行,這里選擇用xpath來處理,我覺得還挺好用的儡蔓。
xpath相關(guān)語法可以參照這個:

http://www.w3school.com.cn/xpath/xpath_syntax.asp
    先設(shè)置各個路徑如下
#獲取所有 li標(biāo)簽
xpath_items = '//ul[@class="note-list"]/li'
#對每個 li標(biāo)簽再提取
xpath_link = './div/a/@href'
xpath_title = './div/a[@class="title"]/text()'
xpath_abstract='./div/p/text()'

使用request的get方法獲取頁面郭蕉,之后進(jìn)行處理:

3、解決頁面自動翻頁問題

Ajax動態(tài)加載參考

(https://zhuanlan.zhihu.com/p/27346009)

??翻頁時頁面url不變喂江,調(diào)用的request 增加了頁碼召锈。
??此時需要打開Chrome的Network,這種技術(shù)的文檔屬于XHR文件获询,打開后可以看到一個新的request url涨岁,其中添加了order_by =added_at 和page=2,方法還是get方法吉嚣。往下繼續(xù)翻可以看到只是page在改變梢薪,這樣的網(wǎng)站簡直簡單多了。
??那么可以設(shè)置一個循環(huán)來實(shí)現(xiàn)頁面的增加尝哆。

4秉撇、Python代碼

爬取繩系的簡書文章的標(biāo)題、摘要以及文章鏈接秋泄。結(jié)果存到excel表中琐馆。

序號 鏈接 標(biāo)題 摘要
1 http://www.reibang.com/p/2a3772293e2d 這是繩系給你的能量 甘為人梯,近我者富恒序,每天給一個人提供價值瘦麸。
2 http://www.reibang.com/p/6cc045b5d40c 15周 每個人都需要能量 你好,我是繩系奸焙。
# -*- coding: utf-8 -*-
"""
Created on Tue Apr 12 11:36:28 2022

@author: dalong10
"""
import requests
from lxml import etree
import time
import socket
import xlwt
 
socket.setdefaulttimeout(20)
#請求頭
headers1 = {
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
    'Accept-Encoding': 'gzip, deflate',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Cache-Control': 'max-age=0',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Proxy-Connection': 'keep-alive',
    'Upgrade-Insecure-Requests': '1',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36',
}
 

#獲取所有 li標(biāo)簽
xpath_items = '//ul[@class="note-list"]/li'
#對每個 li標(biāo)簽再提取
xpath_link = './div/a/@href'
xpath_title = './div/a[@class="title"]/text()'
xpath_abstract='./div/p/text()'
 
a='added_at'
count=1


book = xlwt.Workbook() # 創(chuàng)建excel文件
sheet = book.add_sheet('sheet1') # 創(chuàng)建一個表
title = ['序號','鏈接', '標(biāo)題', '摘要']
for col in range(len(title)): # 存入第一行標(biāo)題
    sheet.write(0, col, title[col])
    
row=1    
#獲取和解析網(wǎng)頁
while count<43:
    #proxy = random.choice(proxy_list)
    #print(proxy)
    r1 = requests.get('http://www.reibang.com/u/3e0a90a51887?order_by={}&page={}'.format(a,count), headers=headers1)
    print('http://www.reibang.com/u/3e0a90a51887?order_by={}&page={}'.format(a,count))
    #r1.encoding = r1.apparent_encoding
    dom1 = etree.HTML(r1.text)
    print(r1.status_code)
 
#獲取所有的文章標(biāo)簽
    items1 = dom1.xpath(xpath_items)
    for article in items1:
        t = {}
        t['link'] = 'http://www.reibang.com'+article.xpath(xpath_link)[0]
        t['title'] = article.xpath(xpath_title)[0]
        t['abstract']=article.xpath(xpath_abstract)[0]
        sheet.write(row, 0, row)
        sheet.write(row, 1, t['link'])
        sheet.write(row, 2, t['title'])
        sheet.write(row, 3, t['abstract'])  
        row=row+1
        print(row)
        print(t)
        
#解析完畢
    count=count+1
    print(count)
    r1.close()
    time.sleep(5)
#存盤    
book.save('shengji.xls')

5瞎暑、參考資料

1彤敛、「Cooooooooco」的博客https://blog.csdn.net/Cooooooooco/article/details/85237968

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末与帆,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子墨榄,更是在濱河造成了極大的恐慌玄糟,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件袄秩,死亡現(xiàn)場離奇詭異阵翎,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)之剧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進(jìn)店門郭卫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人背稼,你說我怎么就攤上這事贰军。” “怎么了蟹肘?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵词疼,是天一觀的道長俯树。 經(jīng)常有香客問我,道長贰盗,這世上最難降的妖魔是什么许饿? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮舵盈,結(jié)果婚禮上陋率,老公的妹妹穿的比我還像新娘。我一直安慰自己秽晚,他們只是感情好翘贮,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著爆惧,像睡著了一般狸页。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上扯再,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天芍耘,我揣著相機(jī)與錄音,去河邊找鬼熄阻。 笑死斋竞,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的秃殉。 我是一名探鬼主播坝初,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼钾军!你這毒婦竟也來了鳄袍?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤吏恭,失蹤者是張志新(化名)和其女友劉穎拗小,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體樱哼,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡哀九,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了搅幅。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片阅束。...
    茶點(diǎn)故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茄唐,靈堂內(nèi)的尸體忽然破棺而出息裸,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布界牡,位于F島的核電站簿寂,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏宿亡。R本人自食惡果不足惜常遂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望挽荠。 院中可真熱鬧克胳,春花似錦、人聲如沸圈匆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽跃赚。三九已至笆搓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間纬傲,已是汗流浹背满败。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留叹括,地道東北人算墨。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像汁雷,于是被迫代替她去往敵國和親净嘀。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評論 2 349

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