01安装ChroPath
前面两课大家学习了如何安装和配置Python以及如何调用webdriver来登录百度首页,本章内容正式进入主题教大家如何去爬取一个网站上想要的内容。在这之前,需要大家先去安装一个名叫:ChroPath的谷歌浏览器扩展程序,这个扩展程序可以帮助大家更好地去进行爬虫,有些同学可能看到这名字就已经联想到了它的用处,这里先不透露。
02寻找目标
咱们这次的项目是要爬取豆瓣电影的信息,先登录豆瓣电影看看吧,确定一下我们需要的内容,在页面上我们看到有电影的名字以及评分,这次我们就先爬取这两个信息吧。
既然确定了目标信息,那么还等啥呢,按F12吧,调出DevTools(检查),如图咱们可以通过这个小箭头去寻找页面上的元素,点击后咱们移到第一部电影绅士们上看看,在DevTools界面直接跳转到了这一标签上。
这时候我们可以先解读一下这个标签里元素的含义,img src = XXXX.jpg 这是啥?我猜是绅士们这部电影的封面吧?不信,点它!果然是。接着alt = “绅士们”,这就是电影名字对不?好了,记住它,我们要用到这个元素来获取电影的名字。
03初写代码
老规矩,咱们先登录一下这个页面,前面我们已经有了url(网页地址),那么代码应该怎么写呢?上一节课我们练了下手登录百度首页对吧,这里也同样。新建一个名叫doubanmovie.py的文件,先导入selenium库调用webdriver……省略,相信大家都会了(这里我用的是sublime Text3,有很多编辑器都支持Python,如VS Code,Atom,PyCharm等等,达到的效果都是一样的,看同学们自己的喜好)
既然能调用webdriver登录豆瓣电影页面了,这时我们要用到前面安装的ChroPath这个插件了,如图找到这个界面,点击复制xpath路径。
那么现在我们可以使用find_element_by_xpath('刚才你复制的路径黏贴进来')来寻找标签。刚才电影名字是在alt属性里对吧,那么我们在后面再加一个get_attribute('alt'),来获取alt的值也就是电影名字。
它的评分呢?在哪里?不急,标签里我们再往下细看,下面还有一个P标签,点开来有个strong标签包含了评分。同理我们还是用find_element_by_xpath()和ChroPath拷贝xpath路径来实现获取。这里同学要问了,为什么评分不用get_attribute??而且后面还带个text??这两个疑问先留给大家自己想一想,咱们下节课再解答。
噔噔噔噔,有木有很神奇,打印出了电影名字和评分咯,好了这节课就到这儿,同学们后会有期。