详解:用python简单实现爬虫的功能!(Selenium+PhantomJS)

前言:

今天为大家带来的内容是详解:用(Selenium+PhantomJS)python简单实现爬虫的功能,希望大家会喜欢,文中示例代码介绍的颇为详细,具有不错的参考意义!

提示:开始之前,会给大家详细的介绍Selenium+PhantomJS 的安装步骤!

Selenium

一、简介

selenium是一个用于Web应用自动化程序测试的工具,测试直接运行在浏览器中,就像真正的用户在操作一样

selenium2支持通过驱动真实浏览器(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)

selenium2支持通过驱动无界面浏览器(HtmlUnit,PhantomJs)

二、安装

Windows

12192974-32caf009af7a92a7
image

第二种方法是:可以直接在C:\Python27\Scripts 下输入命令安装 pip install -U selenium

sudo pip install selenium

</pre>

PhantomJS

一、简介

PhantomJS 是一个基于 WebKit(WebKit是一个开源的浏览器引擎,Chrome,Safari就是用的这个浏览器引擎) 的服务器端 JavaScript API,主要应用场景是:无需浏览器的 Web 测试,页面访问自动化,屏幕捕获,网络监控

二、安装

Windows

12192974-3f7521fbfcbd69ee
image

Linux

sudo apt-get install PhantomJS

</pre>

12192974-fd8a328bdac58352
image
12192974-c99284cf1cd1911a
image

一、超时设置

webdriver类中有三个和时间相关的方法:

1.pageLoadTimeout 设置页面完全加载的超时时间,完全加载即完全渲染完成,同步和异步脚本都执行完

2.setScriptTimeout 设置异步脚本的超时时间

3.implicitlyWait 识别对象的智能等待时间

下面我们以获取校花网title为例来验证效果,因为校花网中图片比较多,所以加载的时间比较长,更能时间我们的效果(另一原因我就不说了,这样才能让我们学起来带劲,哈哈!!!)

12192974-72e48d2c3b1e885a
image

二、元素的定位

对象的定位是通过属性定位来实现的,这种属性就像人的身份证信息一样,或是其他的一些信息来找到这个对象,那我们下面就介绍下Webdriver提供的几个常用的定位方法

<input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

</pre>

上面这个是百度的输入框,我们可以发现我们可以用id来定位这个标签,然后就可以进行后面的操作了

12192974-dc804a116e75b934
image

三、浏览器的操作

1、调用启动的浏览器不是全屏的,有时候会影响我们的某些操作,所以我们可以设置全屏

12192974-fe56374c3c8fdd86
image

2、设置浏览器宽、高

12192974-6fd76c113cebe6ae
image

3、操作浏览器前进、后退

12192974-0f58bc4dd4606f2f
image

四、操作测试对象

定位到元素以后,我们就应该对相应的对象进行某些操作,以达到我们某些特定的目的,那我们下面就介绍下Webdriver提供的几个常用的操作方法

12192974-9bb0bee0f5aa6f9c
image
 print e 

</pre>

五、键盘事件

1、键盘按键用法

12192974-fff9ed32aad1e9be
image

2、键盘组合键使用

12192974-ee33c5ee776a3563
image

六、中文乱码问题

selenium2 在python的send_keys()中输入中文会报错,其实在中文前面加一个u变成unicode就能搞定了

七、鼠标事件

1、鼠标右击

12192974-c5f6733603d706c9
image

2、鼠标双击

12192974-79b8ec2574e023bb
image

以上就是本文的全部内容啦!
python交流群:877562786(群里含大量学习资料,面试宝典等)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值