.
声明:本人只是分享一些床长人工智能教程相关的免费pdf下载文档而已,并非床长人工智能网校的收费文章。尊重版权,支持原创!
更新
其实本文的初衷是为了获取淘宝的非匿名旺旺,在淘宝详情页的最下方有相关评论,含有非匿名旺旺号。
可就在今天,淘宝把所有的账号设置成了匿名显示,,获取非匿名旺旺号已经不可能了
前言
嗯,淘宝,它一直是个难搞的家伙。
而且买家在买宝贝的时候大多数都是匿名评论的,大家都知道非匿名评论是非常有用的,比如对于大数据分析,分析某个宝贝的购买用户星级状况等等。
现在已经不能获取非匿名了,此句已没有意义了。
对于抓淘宝,相信尝试过的童鞋都能体会到抓取它的艰辛,最简单的方法莫过于模拟浏览器了,本节我们就讲解一下利用抓取淘宝评论的方法。
项目提供了如下功能
输入淘宝关键字采集淘宝链接并写入到文件
从文件读取链接,执行评论采集
将评论和旺旺号保存到中
记录当前采集链接索引,保存进度
准备工作
首先你需要安装,版本是
然后需要安装的类库。
安装浏览器。
然后下载,是驱动浏览器的工具,需要把它配置到环境变量里。
有的童鞋说,为什么不用,因为为了防止淘宝禁掉我们,需要登录淘宝账号,登录过程可能会出现奇奇怪怪得验证码,滚动条,手机验证,如果用的话不方便操作,所以在这里我们就使用了。
流程简述
随意打开天猫一个链接
示例链接
发现所有的评论都是匿名的。
即使这个用户不是匿名评论的,那也会显示匿名,淘宝这保密做的挺好。
接下来我们返回宝贝详情页面,然后一直下拉下拉,拉到最最后,可以看到有个看了又看板块。
这是什么?这是此宝贝相关宝贝以及它的一些评论。
看到了有非匿名用户了,哈哈哈,淘宝加密了评论,推荐部分却没有加密。
嗯,就从这里,我们把它们的旺旺号都抓下来,顺便把评论和购买的宝贝抓下来。
现在已经全部改成了匿名,上述话已经无意义了。
那么抓取完之后,保存到哪里呢?为了便于管理和统计,在这里保存到中,那么就需要用到等库。
嗯,动机就是这样。
实战爬取
抓取过程
首先我们观察这个链接,在最初的时候,其实网页并没有加载最下方的看了又看内容的,慢慢往下滑动网页,滑到最下方之后,才发现看了又看页面才慢慢加载出来。
很明显,这个地方使用了,由于我们用的是,所以这里我们不能直接来模拟的,需要我们来模拟真实的用户操作。
所以我们要模拟的就是,在网页部分加载出来之后,模拟浏览器滑动到下方,使看了又看内容显示出来,然后获取网页源代码,解析之即可。
两个至关重要的点,判断网页框架大体加载出来,模拟滑动直到最下方的内容加载出来。
首先,我们解决第一个问题,怎样判断网页框架大体加载出来。
我们可以用网页中的某个元素的出现与否来判断。
比如
这一部分是否加载出来。
审查一下代码,叫做,好,那就用它来作为网页初步加载成功的标志。
在中,我们用显式等待的方法来判断该元素是否已经加载成功。
已经成功加载出下方橱窗推荐宝贝信息
接下来我们需要模拟下拉浏览器,不妨直接下拉到底部,再从底部向上拉,可能需要下拉多次,所以在这里定义了一个下拉次数,那么判断看了又看正文内容是否出现依然可以用显式等待的方法。
浏览器审查元素发现它的选择器是
那么可以用如下方法来判断是否加载成功
下拉过程可以用执行的方法实现。
其中是下拉的次数,经过测试之后,每次拉动距离和是平方关系比较科学,具体不再描述,当然你可以改成自己想要的数值。
嗯,加载出来之后,就可以用来获取网页源代码了。
用解析即可。
采集链接
刚才我们测试的链接是哪里来的?我们不能一个个去找吧?所以,在这里又提供了一个采集链接的过程,将采集的链接保存到文本,然后抓取的时候从文本读取一个个链接即可。
所以在这里我们模拟搜索的过程,关键字让用户输入,将搜索的链接采集下来。
在此模拟了输入文字,点击按钮和翻页的功能。
下面的方法模拟了加载出搜索框之后输入文字点击回车的过程,将网页的结果返回。
加载页面失败成功找到了搜索框,输入关键字,没有找到搜索框正在查询该关键字查询失败
下面的方法模拟了翻页的过程,到指定的翻页数目为止
正在采集下一页的宝贝链接,页面下拉失败找到了翻页按钮,。。。