快捷搜索:  汽车  科技

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)按照上图点选network,headers,之后因为数据很多,我们用ctrl f搜索一下,搜索内容是排行榜第一的影片名称“美丽人生”,有两个搜索结果:四、抓包分析,打开浏览器以后按一下f12键,刷新网页,用浏览器自带的抓包功能分析一下网页。二、尝试获取网页源码。TracePrint url.get("https://movie.douban.com/typerank?type_name=喜剧&type=24&interval_id=100:90&action=")三、分析返回值发现返回值并没有排行榜的内容,这说明这个排行榜内容是动态加载的,不能通过直接读取这个网址的网页源码获取到。

大家好,我是公众号3分钟学堂的郭立员,今天给大家带来的是数据采集源码的分享。

本期以采集豆瓣排名数据为例:

分析

一、采集内容:https://movie.douban.com/typerank?type_name=喜剧&type=24&interval_id=100:90&action=

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(1)

随便选一个类型影片的排行榜。

二、尝试获取网页源码。

TracePrint url.get("https://movie.douban.com/typerank?type_name=喜剧&type=24&interval_id=100:90&action=")

三、分析返回值

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(2)

发现返回值并没有排行榜的内容,这说明这个排行榜内容是动态加载的,不能通过直接读取这个网址的网页源码获取到。

四、抓包分析,打开浏览器以后按一下f12键,刷新网页,用浏览器自带的抓包功能分析一下网页。

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(3)

按照上图点选network,headers,之后因为数据很多,我们用ctrl f搜索一下,搜索内容是排行榜第一的影片名称“美丽人生”,有两个搜索结果:

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(4)

我们随便选其中一个分析一下,先把网址复制出来。

https://movie.douban.com/j/chart/top_list?type=24&interval_id=100:90&action=&start=0&limit=20

我们直接分析问号后面参数的部分:

type=24 => 影片类型:24

interval_id=100:90 => 影片被喜爱程度:100%-90% (:是冒号)

action= => 没有值暂时无法判断,字面翻译动作,可省略

start=0 => 起始位置,第一位开始

limit=20 => 显示多少条 ,限制最多20条

这些参数中,影片类型需要在原网址中提取:(下面红色部分)

https://movie.douban.com/typerank?type_name=喜剧&type=24&interval_id=100:90&action=

每一个类型对应一个数字,比如喜剧是24,动作是5,其他的可以点开更多类型去一一点开看网址。

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(5)

五、获取网页源码

TracePrint url.get("https://movie.douban.com/j/chart/top_list?type=24&interval_id=100:90&action=&start=0&limit=20")

六、网页返回值:

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(6)

返回值是一个json,这里提取是先转table,然后用键值对提取,如果不会在我公众号(3分钟学堂)中搜索json,有多篇关于json提取的文章教程。

脚本源码

dim json= url.get("https://movie.douban.com/j/chart/top_list?type=13&interval_id=100:90") Dim table=encode.jsontotable(json) For i = 1 To Len(table) TracePrint table[i]["title"] table[i]["rating"][1] Next

按键精灵调用网页api(采集豆瓣排名数据的按键精灵脚本源码)(7)

猜您喜欢: