舔狗福利来了,python教你舔狗舔到量的质变变成海王
![image](https://upload-images.jianshu.io/upload_images/25205170-1bcd2a456ae595db?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
对于Python的自动化测试或者是爬虫开发者来说,对于selenium库想必都听说过,selenium本身是作为Web应用测试工具,但是作为爬虫工具也有很广泛的用途。
**Selenium虽然好用,但是它大多数的时刻都是和Web的网页元素之间打交道,需要用到html网页的标签,CSS选择器等知识**。虽然自动化程度较高,但是使用起来仍然不是很方便,上手也不是很容易。今天,小编就带领大家来认识一款基于Selenium的库——Helium。
![image.png](https://upload-images.jianshu.io/upload_images/25205170-929c23b3180d0803.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
###### Helium库简介
Helium库是基于Selenium基础上的更加高级的Web自动化工具,它能够通过网页上可以看见的标签和名称等信息来进行用户交互。我们可以用来进行点击键盘的按键、点击标签、滚动鼠标等一系列的鼠标和键盘操作。
而Helium的安装也是非常的简单,如下图所示:
![image.png](https://upload-images.jianshu.io/upload_images/25205170-8f4b49b47ef9500b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
大家只需要pip install Helium即可安装,但是需要注意的是,普通的安装方式会非常的慢,因此小编利用了清华镜像来帮助下载,提升下载的速度。安装之后,我们就可以来使用Helium了,首先我们利用Helium来登录一下GitHub账号。其效果如下图所示:
![image.png](https://upload-images.jianshu.io/upload_images/25205170-6700ff62b9d2b45f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
上图中程序跳转到GitHub的登录界面,然后输入用户的名字和用户的密码,最后点击登录即可登录上GitHub的账号,过程很简单,我们来看一下程序是如何编写的吧。
![image.png](https://upload-images.jianshu.io/upload_images/25205170-0ddf42c128d4eb6b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
上述的程序仅有短短的五行,而且每行的意义都非常的清晰和明确。
* 首先,第一行是启动浏览器;
* 然后,我们直接跳转到GitHub账号的登录页面,大家也可以直接将第一第二句程序合并成为go_to(“https://github.com/login”)。
* 第三句程序,是向GitHub登录界面中输入用户名或者是邮箱的账号,注意,这里的into代表的是我们往哪里写,程序可以直接根据网页上的名字进行定位,直接定位到”Username or email address“的标签下,对于程序编写者来说更加便捷。不需要再去寻找对应的元素;
* 第四句是向里面写入密码;
* 最后第五句,直接点击”Sign in“
程序便可以直接登录。下图是对应的selenium登录GitHub的程序。
![image.png](https://upload-images.jianshu.io/upload_images/25205170-4b6e8d69e48fb023.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
对比之下,可以看出,Helium程序是非常的简洁而且对用户非常的友好。让大家非常清楚每一步的操作。
###### 爬取妹子图片
接下来,为了更好的展示Helium的强大,小编利用Helium来自动化抓取百度图片中的妹子图片,看看我们是如何实现的吧,我们首先来介绍一下程序,并按照我们想下载百度图片的思路来看待程序。
![image.png](https://upload-images.jianshu.io/upload_images/25205170-4fe71474802fb9b5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
上述程序中,左边是我们的程序索引,右面是我们的程序,我们可以按照我们提取百度图片的思路来看待程序,小编分步解释每一行代码:
* 打开百度图片的网址;
* 输入“小姐姐”的关键词搜索;
* 点击enter进行搜索;
* 对于每张图片,Helium找到该元素;
* 点击图片,进入图片的子网页;
* 点击下载该图片;
* 程序睡眠两秒,用来下载图片;
* 跳转回子网页;
* 关闭子网页;
* 跳转回子页面;
* 程序睡眠两秒;
上述的每一行对应着程序种每条语句的含义,这样理解起来是不是非常的方便了呢。
推荐一下我建的python学习交流qun:850973621,群里有项目源码分享,开发工具、
电子书籍、免费的视频教程分享。可以加入一起交流学习,一起进步!