如何抓取網(wǎng)頁中的表格


之前出爹,我在搜索vscode的快捷鍵的時候再悼,找到一個頁面是以表格的形式呈現(xiàn)vscode的各種快捷鍵操作的(如下圖)。自從學了Python爬蟲后,就形成了一個慣性思維环形,看到網(wǎng)頁中有什么比較好的內(nèi)容策泣,但是復制起來又不是很方便的時候,就會想著如何用Python快速的抓取下來抬吟。下面萨咕,我就來簡單的介紹下我的一些抓取表格的思路和方法。


1.在IE瀏覽器中直接使用導出EXCLE

微軟的這個設計還是很人性化的火本,對于網(wǎng)頁中以表格呈現(xiàn)的內(nèi)容危队,以這種方式存取特別方便。我們需要做的僅僅是在頁面中點擊右鍵選擇導出到EXCEL发侵,就能把頁面中的內(nèi)容導出到單元格中交掏。
這種方式的缺陷是:

  • 頁面內(nèi)容比較多時會比較慢,會給人導出失敗的錯覺
  • 除了表格中的數(shù)據(jù)刃鳄,頁面中其他的所有內(nèi)容也會導進EXCEL盅弛,需要后續(xù)整理
  • 雖然,沒任何技術要求叔锐。但是如果要處理大量頁面時挪鹏,需要一個個頁面去操作,還是比較繁瑣的

2.利用Python抓取網(wǎng)頁中的表格

接下來愉烙,就是本文的重點了讨盒,直接先上代碼。

from bs4 import BeautifulSoup
import requests
import pandas as pd
url = 'https://segmentfault.com/a/1190000007688656'
res = requests.get(url)
soup = BeautifulSoup(res.text, 'lxml')
tables = soup.select('table')
df_list = []
for table in tables:
    df_list.append(pd.concat(pd.read_html(table.prettify())))
df = pd.concat(df_list)
df.to_excel('vscode快捷鍵大全.xlsx')

我知道對于許多沒學過編程知識的人步责,可能看到代碼就會望而卻步返顺,我之前也是這樣,因為這對于沒接觸過的人來說是一個相當不舒適的區(qū)域蔓肯。但是遂鹊,這也就是10行代碼,就能完成一個簡單的爬蟲蔗包,重要的是這些代碼是可以復用的秉扑,只需要修改傳入的連接地址。
下面就簡單介紹下代碼的含義:

  • 主要用到三個庫:requests,BeautifulSoup和pandas(1-3行)
  • 用BeautifulSoup取得table標簽下的表格內(nèi)容(4-7行)
  • pd.read_html直接把HTML中內(nèi)容讀取為DataFrame (8-11行)
    這一步是關鍵调限,pd.read_html方法省去了許多解析HTML的步驟舟陆,否則要用BeautifulSoup一個個抓取表格中內(nèi)容會很繁瑣。里面還用到了prettify()方法耻矮,可以把BeautifulSoup對象變成字符串秦躯,因為pd.read_html處理的是字符串對象
  • 最后就是把DataFrame導出到EXCEL(12行)

這樣就完成了一個簡單的抓取一個網(wǎng)頁中所有表格的爬蟲

3.關于選擇方法的建議

最后,我想強調(diào)的一點是淘钟,方法不是我們最終的目的宦赠,我們只是想通過更便捷的方式達到學習內(nèi)容的目的陪毡,所以不要為了追求高大上的方法而迷失了方向米母。
拿本文的為列勾扭,其實獲得vscode快捷鍵操作表格的最好方法是直接在瀏覽器中導出到EXCEL,甚至是直接復制粘貼铁瞒。這樣我們就能把精力專注于學習vscode快捷鍵操作,而不是獲取這個表格的方法妙色。
如果,換個場景慧耍,假設這個表格的內(nèi)容分散在很多很多的網(wǎng)頁中身辨,那我們還是需要編個爬蟲,這樣會更快芍碧。而且煌珊,如果是基于學習python的目的,培養(yǎng)這種挖掘資料的思維也是很重要的泌豆。
所以定庵,關鍵我們要明確自己的目的,根據(jù)相應的目標踪危,選擇最適合的方式蔬浙。

下期預告:下篇文章我將介紹運用正則表達式從地方的統(tǒng)計公報中抓取結構化的數(shù)據(jù)

搜索公眾號:Python__R,回復vscode快捷鍵大全獲取vscode快捷鍵大全.xlsl

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市贞远,隨后出現(xiàn)的幾起案子畴博,更是在濱河造成了極大的恐慌,老刑警劉巖蓝仲,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件俱病,死亡現(xiàn)場離奇詭異,居然都是意外死亡袱结,警方通過查閱死者的電腦和手機亮隙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來擎勘,“玉大人咱揍,你說我怎么就攤上這事∨锒” “怎么了煤裙?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長噪漾。 經(jīng)常有香客問我硼砰,道長,這世上最難降的妖魔是什么欣硼? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任题翰,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘豹障。我一直安慰自己冯事,他們只是感情好,可當我...
    茶點故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布血公。 她就那樣靜靜地躺著昵仅,像睡著了一般。 火紅的嫁衣襯著肌膚如雪累魔。 梳的紋絲不亂的頭發(fā)上摔笤,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天,我揣著相機與錄音垦写,去河邊找鬼吕世。 笑死,一個胖子當著我的面吹牛梯投,可吹牛的內(nèi)容都是我干的命辖。 我是一名探鬼主播,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼晚伙,長吁一口氣:“原來是場噩夢啊……” “哼吮龄!你這毒婦竟也來了?” 一聲冷哼從身側響起咆疗,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤漓帚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后午磁,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尝抖,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年迅皇,在試婚紗的時候發(fā)現(xiàn)自己被綠了昧辽。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡登颓,死狀恐怖搅荞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情框咙,我是刑警寧澤咕痛,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布,位于F島的核電站喇嘱,受9級特大地震影響茉贡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜者铜,卻給世界環(huán)境...
    茶點故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一腔丧、第九天 我趴在偏房一處隱蔽的房頂上張望放椰。 院中可真熱鬧,春花似錦愉粤、人聲如沸砾医。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽藻烤。三九已至绷雏,卻和暖如春头滔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背涎显。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工坤检, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人期吓。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓早歇,卻偏偏與公主長得像,于是被迫代替她去往敵國和親讨勤。 傳聞我的和親對象是個殘疾皇子箭跳,可洞房花燭夜當晚...
    茶點故事閱讀 43,627評論 2 350

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

  • 33款可用來抓數(shù)據(jù)的開源爬蟲軟件工具 要玩大數(shù)據(jù),沒有數(shù)據(jù)怎么玩潭千?這里推薦一些33款開源爬蟲軟件給大家谱姓。 爬蟲,即...
    visiontry閱讀 7,302評論 1 99
  • 關系中我一直在期望對方成為我想要的樣子刨晴!如果對方不是我想要的樣子屉来,我就很痛苦!很受傷狈癞!我覺得我都為你犧牲這么多了茄靠!...
    竺子閱讀 192評論 0 0
  • 不許撤謊,不許隱瞞…… 人到中年疼邀,苦逼事多喂江,問君有幾何?旁振? 從工作來說获询,順流還是逆流涨岁? 自己心中最清楚,也最有體驗...
    清華秋實閱讀 710評論 0 0
  • 聽到小李子說她被分手了吉嚣,我沒有很吃驚梢薪,因為那個人對小李子我沒有看到溫柔。 好幾個朋友一起吃飯尝哆,有熟悉的也有剛認識的...
    失蹤的之諾閱讀 425評論 0 0