PhantomJS
PhantomJS是无界面浏览器,具有完整的浏览器内核,包括js解析引擎,渲染引擎,请求处理等,但是不包括显示和用户交互页面的浏览器。
PhantomJS的使用场景
PhantomJS的适用范围就是无界面浏览器的适用范围。通常无界面浏览器可以用于页面自动化,网页监控,网络爬虫等:
页面自动化测试:希望自动的登陆网站并做一些操作然后检查结果是否正常。
网页监控:希望定期打开页面,检查网站是否能正常加载,加载结果是否符合预期。加载速度如何等。
网络爬虫:获取页面中使用js来下载和渲染信息,或者是获取链接处使用js来跳转后的真实地址。
PhantomJS环境配置
- 下载地址:http://phantomjs.org/download.html
- 下载后解压,bin文件夹下找到phantomjs.exe文件,拷贝到python的安装根目录下
执行测试
- 设置driver浏览器:driver = webdriver.PhantomJS()
- 运行时,会自动生成名为:ghostdriver.log日志文件,不会弹出浏览器界面
示例代码:
# -*- coding:utf-8 -*-
from
selenium
import
webdriver
driver = webdriver.PhantomJS()
driver.get(
'https://www.baidu.com/'
)
print
(
'
打开浏览器
'
)
driver.find_element_by_id(
'kw'
).send_keys(
'
测试
'
)
print
(
'
关闭
'
)
driver.quit()
print
(
'
测试完成
'
)