此篇可以视为第3篇的续篇,只是将对象从去哪儿网转变为淘宝网,附上师父的一句教诲:被逼无奈,成长最快。再丢一张效果图,马上进入实操:
打开360浏览器
打开淘宝官网
→在键盘上按下F12键→左键单击手机端标识
→搜索框
→在这里键入关键词:衬衫→回车
→销量优先
→Network
→XHR
→点击此链接
→preview
→listItem
→依次点开“0:“至”19:“
→这样我们就找到了需要的所有内容,接下来我们返回去找到链接结合函数就能抓取所有我们能看到的内容,所谓可见即可爬。
→Headers
→找到URL后,我们发现其中有一段编码,我们需要将其解码,一探究竟。
→在百度搜索框键入“站长解码”→回车
→站长工具
→URL编码/解码
→将之前的编码粘贴进去→UrlDecode解码
→解码之后我们发现编码原来就是关键词衬衫
→新建一张Excel表格→键入关键词→键入衬衫→选中→插入→表格
→在表包含标题前打钩→确定
→数据→从表格
→添加列→自定义列
→将之前我们找到带有编码的整串链接复制到“=”后面
→将编码替换成函数Uri.EscapeDataString()
导盲犬:Uri.EscapeDataString()函数是转码用的,默认是utf-8。
注:函数需区分大小写并且括号是在英文状态下键入的,插入函数的时候要在函数前后加上连接符号“&”以及引号。
→在括号中间选中→双击关键词
→插入Web.Contents函数
导盲犬:函数Web.Contents()是将从web URL下载的内容返回为二进制值
注:插入的函数Web.Contents()需要在括号里面加“”号,表示引用文本。
→插入Json.Document函数
导盲犬:函数Json.Document()是返回一个JSON文件的内容,直接解析json的格式化数据。
→确定
→继续
→倒三角符号
→扩展符号
→回到淘宝页面发现我们需要的数据在listItem下。
→仅勾选listItem,并把使用原始列名作为前缀前面的勾去掉→确定
→扩展
→扩展到新行
→扩展
→勾选自己需要的数据→确定
→需要的话,可双击标题键入中文,方便查看。
→开始→关闭并上载
→关闭并上载至
→到这里,一个简单的爬虫就算完成了。Power Query有一个非常强大的功能就是他可以记录我们的操作,如果需要多个关键词的数据只需要在添加后刷新一下即可。
→回到Sheet1→键入裤子→双击右侧表1
→刷新预览
→开始→关闭并上载→关闭并上载至
→右击表1→刷新
→这样就得到新的数据了
如果觉得数据量太小,意义不大,可以添加任意页码爬取,这里我把抓取前5的页的步骤讲解一下,方便大家操作。
→回到Sheet1→按图键入关键词和数字
→双击右侧表1
→双击已添加的自定义
→去掉数字1",加上连接符号“&”→双击页码→确定
→单击右侧更改的类型→单击"页码"旁边的数字→文本→插入
→重命名的列
→开始→关闭并上载→关闭并上载至
→这样我们就得到了关键词前5页的数据。