你敢相信?Excel居然可以做搜索引擎?。ㄎ哪┝粞猿楠剘)
優(yōu)采云 發(fā)布時(shí)間: 2022-06-18 03:19你敢相信?Excel居然可以做搜索引擎?。ㄎ哪┝粞猿楠剘)
心血來(lái)潮在知乎里面搜索一下 Excel,想學(xué)習一些高點(diǎn)贊文章的寫(xiě)作方法。
看到這些標題,完了,一下子勾起下載和收藏的欲望啦!
怎么樣把所有高點(diǎn)贊的文章全部都抓下來(lái)呢?
開(kāi)始的時(shí)候我想的是用 Python。
后來(lái)想一想,用 Power query 好像也可以實(shí)現,于是就做出了下面這個(gè)效果。
在表格里面輸入搜索詞,然后右鍵刷新,就可以得到搜索結果。
你能明白我一定要抓到表格里嗎?
因為 Excel 里可以根據「點(diǎn)贊數量」直接排序??!
那種感覺(jué)就跟排隊一樣,到哪里排隊,我都是第 1 個(gè),挑最好的!
好了,閑話(huà)少說(shuō),我們來(lái)看一看這個(gè)表格是怎么做出來(lái)的。
大致可以分為 4 個(gè)步驟:? 獲取 JSON 數據連接;? Power query 處理數據;? 配置搜索地址;? 添加超鏈接。
操作步驟
? 獲取 JSON 數據連接
平常在瀏覽網(wǎng)頁(yè)的時(shí)候,是一個(gè)單純的網(wǎng)頁(yè)地址。
而網(wǎng)頁(yè)里所看到的數據,實(shí)際上也有一個(gè)單獨的數據鏈接,這個(gè)可以在瀏覽器里面查找到。
我們需要的數據鏈接,對應的通常是 JSON 格式的數據,就像下面這樣。
查找的方法,需要進(jìn)入到開(kāi)發(fā)者模式,然后查看數據的 Network 變化,找到 xhr 類(lèi)型的鏈接,其中一個(gè)就是數據的傳輸連接。
把這個(gè)鏈接復制下來(lái),這就是 Power query 要抓取數據的鏈接。
?Power query 處理
你可能不知道,Power Query 除了可以抓取 Excel 當中的數據之外,
還可以抓取 SQL、Access 等多個(gè)類(lèi)型的數據:
網(wǎng)站數據也是其中一個(gè):
把前面我們獲取的鏈接,粘貼到 PQ 里面,鏈接就可以抓取數據了。
然后得到的是網(wǎng)頁(yè)的數據格式,怎么把具體的文章數據獲取到呢?
Power Query 強大的地方就在于,它可以自動(dòng)識別 json 的數據格式,并解析提取具體的內容。
整個(gè)過(guò)程,我們不需要做任何的操作,只是鼠標點(diǎn)點(diǎn)就可以完成。
這個(gè)時(shí)候我們獲得的數據,會(huì )有一些不需要的多余的數據。
比如說(shuō):thumbnail_info(縮略圖信息),relationship,question,id.1 等等。
把它們刪掉,只保留可需要的文章的標題、作者、超鏈接等等就可以了。
數據處理完成后,在開(kāi)始選卡,點(diǎn)擊「關(guān)閉并上載」,就完成了數據的抓取,非常簡(jiǎn)單。
? 配置搜索地址
不過(guò)這個(gè)時(shí)候,我們所抓取到的數據是固定的,沒(méi)辦法根據我們輸入的關(guān)鍵詞來(lái)更新。
這是因為數據超鏈接當中所包含的搜索詞沒(méi)有更新。
所以這一步呢,我們需要配置一下這個(gè)數據鏈接,實(shí)現根據搜索詞動(dòng)態(tài)更新。
在表格里面新創(chuàng )建一個(gè)數據,然后加載到 Power query 里面。
再獲取這個(gè)搜索詞,以變量的形式放在搜索地址里面,就完成了搜索地址的配置。
修改后的地址代碼如下:
? getdata = (page)=><br />? let<br />? ? ? keywords = 搜索詞[ 搜索詞]{0},<br />? ? ? 源 = Json.Document(Web.Contents("https://www.zhihu.com/api/v4/search_v3?t=general&q="& keywords & "&correction=1&offset="& Text.From(page*20) &"&limit=20&random=" & Text.From(Number.Random()))),<br />? ? ? data = 源[data],<br />? ? ? jsondata = Table.FromList(data, Splitter.SplitByNothing(), null, null, ExtraValues.Error)<br />? in<br />? ? ? jsondata,<br />? 轉換為表 = Table.Combine(List.Transform({1..10}, getdata)),??
? 添加超鏈接
到這一步所有的數據都已經(jīng)處理完成了,但是如果想要查看原始的知乎頁(yè)面,需要復制這個(gè)超鏈接,然后在瀏覽器里打開(kāi)。
每次要點(diǎn)擊好幾次鼠標比較麻煩;
這里我們借助 HYPERLINK 這一個(gè)函數,生成一個(gè)可以點(diǎn)擊的超鏈接,這樣訪(fǎng)問(wèn)起來(lái)就簡(jiǎn)單很多了。
? 最后效果
最后的效果就是:
? 輸入搜索詞;? 點(diǎn)擊右鍵刷新;? 找點(diǎn)贊最高的;? 點(diǎn)擊【點(diǎn)擊查看】,享受插隊的感覺(jué)!
總結
知道在表格里面搜索的好處了嗎?
? 按照「點(diǎn)贊數」排序,「評論數」排序;? 看過(guò)的文章,可以加一列寫(xiě)備注;? 可以篩選自己喜歡的「作者」等等。
明白為什么,精英都是 Excel 控了吧?
現在大部分表格的使用者,還是把 Excel 當做一個(gè)報表工具,畫(huà)畫(huà)表格、寫(xiě)寫(xiě)公式而已。
請你記住下面幾個(gè) Excel 新功能,這些功能已經(jīng)讓 Excel 成長(cháng)為了,一個(gè)強大的數據統計、數據分析軟件,不再是你印象中的報表而已。
? Power query:數據整理、清洗工具,搭載M強大的M語(yǔ)言,可以實(shí)現多表合并,也是本文的主要技術(shù)。
? Power Pivot:數據統計工具,可以自定義統計方法,實(shí)現透視表多字段計算、自定義DAX數據計算方式。
? Power BI:強大、易用的可視化工具,實(shí)現交互式數呈現,是企業(yè)商務(wù)數據報告優(yōu)質(zhì)解決方案。
歡迎在留言區聊聊:你還知道哪些 Excel 的神奇用法?你最希望 Excel 有什么功能?……
抽獎獎品:秋葉獨家定制超大大大鼠標墊中獎名額:5名抽獎方式:留言點(diǎn)贊前 2 名+隨機抽 3 名
截止時(shí)間:2020 年 2 月 26 日 20:00
插播一條廣告:
2 月 24 日~2 月 29 日,秋葉系列課程大促,990 元優(yōu)惠券等你來(lái)領(lǐng)!
記得關(guān)注明天(周一)的文章~
宅家抗疫,小 E 強烈推薦你買(mǎi)一門(mén)好課,學(xué)習一項技能,提升競爭力!
點(diǎn)個(gè)在看,中獎率飆升 !