Python phantomjs

PhantomJS是一个可编写脚本的无头网页浏览器。它运行在Windows,macOS,Linux和FreeBSD上。

使用QtWebKit作为后端,它为各种Web标准提供快速和本机支持:DOM处理,CSS选择器,JSON,Canvas和SVG,

PhantomJS的用处可谓非常广泛,诸如网络监测、网页截屏、无需浏览器的 Web 测试、页面访问自动化等。在

python中经常用来获取动态数据

下面我们来讲一下phantomjs的安装

phantomjs官方下载地址:http://phantomjs.org/download.html

根据自己的情况选择下载压缩包,这里我用的是windows7,所以选下面红框里的这个

下载完成之后解压,为了防止文件不经意间的丢失,我们将它移动到一个不容易丢失的地方,比如我这里将它放在我安装pycharm的同级目录下

打开文件找到如下图所示的文件,点击

如果出现这样的窗口说明你可以运行js代码了

完成之后还有最重要的一步,就是将phantomjs添加到环境变量中

右键 我的电脑>>属性>>高级系统设置>>环境变量

然后找到PATH点击编辑

将你的文件路径添加进去,记得要在前方加个英文的分号,例如我要添加的就是:“;D:\python\phantomjs-2.1.1-windows\bin”

然后一路点击确定

到此phantomjs就安装完成了。

接下来我举个使用phantomjs的简单的例子:

如果没有将phantomjs加入到环境变量中,使用phantomjs的时候需要在()里面写上phantomjs.exe的路径,

添加到环境变量之后()里的内容可以省略

from selenium import webdriver
# 使用webkit无界面浏览器
# 如果路径为exe启动程序的路径 那么该路径需要加一个r
driver = webdriver.PhantomJS(executable_path = r'D:/python/phantomjs-2.1.1-windows/bin/phantomjs.exe')
# 获取指定网页的数据
driver.get('http://news.sohu.com/scroll/')
print(driver.find_element_by_class_name('title').text)

结果为:

当然这里的数据是动态的,每次获取的数据都可能不一样

红色字体为警告:selenium对PhantomJS的使用以被废弃,请使用headless。不用管这个,这个不是错误,放心使用就行了

猜你喜欢

转载自blog.csdn.net/qq_42603652/article/details/81542852