前言:
今天大家对“python爬网页表格”大概比较关怀,我们都想要知道一些“python爬网页表格”的相关资讯。那么小编也在网摘上汇集了一些关于“python爬网页表格””的相关知识,希望大家能喜欢,看官们快快来了解一下吧!私信回复关键词【插件】~
获取Excel高手都在用的“插件合集+插件使用小技巧”!
心血来潮在知乎里面搜索一下 Excel,想学习一些高点赞文章的写作方法。
看到这些标题,完了,一下子勾起下载和收藏的欲望啦!
怎么样把所有高点赞的文章全部都抓下来呢?
开始的时候我想的是用 Python。
后来想一想,用 Power query 好像也可以实现,于是就做出了下面这个效果。
在表格里面输入搜索词,然后右键刷新,就可以得到搜索结果。
你能明白我一定要抓到表格里吗?
因为 Excel 里可以根据「点赞数量」直接排序啊!
那种感觉就跟排队一样,到哪里排队,我都是第 1 个,挑最好的!
好了,闲话少说,我们来看一看这个表格是怎么做出来的。
大致可以分为 4 个步骤:
❶ 获取 JSON 数据连接;
❷ Power query 处理数据;
❸ 配置搜索地址;
❹ 添加超链接。
01操作步骤
❶ 获取 JSON 数据连接
平常在浏览网页的时候,是一个单纯的网页地址。
而网页里所看到的数据,实际上也有一个单独的数据链接,这个可以在浏览器里面查找到。
我们需要的数据链接,对应的通常是 JSON 格式的数据,就像下面这样。
查找的方法,需要进入到开发者模式,然后查看数据的 Network 变化,找到 xhr 类型的链接,其中一个就是数据的传输连接。
把这个链接复制下来,这就是 Power query 要抓取数据的链接。
❷ Power query 处理
你可能不知道,Power Query 除了可以抓取 Excel 当中的数据之外,
还可以抓取 SQL、Access 等多个类型的数据:
网站数据也是其中一个:
把前面我们获取的链接,粘贴到 PQ 里面,链接就可以抓取数据了。
然后得到的是网页的数据格式,怎么把具体的文章数据获取到呢?
Power Query 强大的地方就在于,它可以自动识别 json 的数据格式,并解析提取具体的内容。
整个过程,我们不需要做任何的操作,只是鼠标点点就可以完成。
这个时候我们获得的数据,会有一些不需要的多余的数据。
比如说:thumbnail_info(缩略图信息),relationship,question,id.1 等等。
把它们删掉,只保留可需要的文章的标题、作者、超链接等等就可以了。
数据处理完成后,在开始选卡,点击「关闭并上载」,就完成了数据的抓取,非常简单。
❸ 配置搜索地址
不过这个时候,我们所抓取到的数据是固定的,没办法根据我们输入的关键词来更新。
这是因为数据超链接当中所包含的搜索词没有更新。
所以这一步呢,我们需要配置一下这个数据链接,实现根据搜索词动态更新。
在表格里面新创建一个数据,然后加载到 Power query 里面。
再获取这个搜索词,以变量的形式放在搜索地址里面,就完成了搜索地址的配置。
修改后的地址代码如下:
getdata = (page)=> let keywords = 搜索词[ 搜索词]{0}, 源 = Json.Document(Web.Contents(";& keywords & "&correction=1&offset="& Text.From(page*20) &"&limit=20&random=" & Text.From(Number.Random()))), data = 源[data], jsondata = Table.FromList(data, Splitter.SplitByNothing(), null, null, ExtraValues.Error) in jsondata, 转换为表 = Table.Combine(List.Transform({1..10}, getdata)),
▲ 左右滑动查看
❹ 添加超链接
到这一步所有的数据都已经处理完成了,但是如果想要查看原始的知乎页面,需要复制这个超链接,然后在浏览器里打开。
每次要点击好几次鼠标比较麻烦;
这里我们借助 HYPERLINK 这一个函数,生成一个可以点击的超链接,这样访问起来就简单很多了。
❺ 最后效果
最后的效果就是:
❶ 输入搜索词;
❷ 点击右键刷新;
❸ 找点赞最高的;
❹ 点击【点击查看】,享受插队的感觉!
02总结
知道在表格里面搜索的好处了吗?
❶ 按照「点赞数」排序,「评论数」排序;
❷ 看过的文章,可以加一列写备注;
❸ 可以筛选自己喜欢的「作者」等等。
明白为什么,精英都是 Excel 控了吧?
现在大部分表格的使用者,还是把 Excel 当做一个报表工具,画画表格、写写公式而已。
请你记住下面几个 Excel 新功能,这些功能已经让 Excel 成长为了,一个强大的数据统计、数据分析软件,不再是你印象中的报表而已。
❶ Power query:数据整理、清洗工具,搭载M强大的M语言,可以实现多表合并,也是本文的主要技术。
❷ Power Pivot:数据统计工具,可以自定义统计方法,实现透视表多字段计算、自定义DAX数据计算方式。
❸ Power BI:强大、易用的可视化工具,实现交互式数呈现,是企业商务数据报告优质解决方案。
欢迎在留言区聊聊:
你还知道哪些 Excel 的神奇用法?
你最希望 Excel 有什么功能?
……
私信回复关键词【插件】~
获取Excel高手都在用的“插件合集+插件使用小技巧”!
标签: #python爬网页表格