安装selenium:
1
|
pip install selenium |
安装PhantomJS:
1
2
3
4
|
https: //bitbucket .org /ariya/phantomjs/downloads/phantomjs-1 .9.7-linux-x86_64. tar .bz2
tar jxvf phantomjs-1.9.7-linux-x86_64. tar .bz2
cp phantomjs-1.9.7-linux-x86_64 /bin/phantomjs /bin/
chmod 755 /bin/phantomjs
|
使用示例:
1
2
3
4
5
|
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get( "http://www.baidu.com" )
data = driver.title
print data
|
通过Remote Selenium Server:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
driver = webdriver.Remote(
command_executor = 'http://192.168.1.3:4444/wd/hub' ,
desired_capabilities = { 'browserName' : 'PhantomJS' ,
'version' : '2' ,
'javascriptEnabled' : True })
driver = webdriver.Remote(
command_executor = 'http://192.168.1.3:4444/wd/hub' ,
desired_capabilities = DesiredCapabilities.PHANTOMJS)
driver.get( "http://www.baidu.com" )
data = driver.title
print data
|
PhantomJS和Firefox速度对比:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import unittest
from selenium import webdriver
import time
class TestThree(unittest.TestCase):
def setUp( self ):
self .startTime = time.time()
def test_url_fire( self ):
self .driver = webdriver.Firefox()
self .driver.get( "http://www.qq.com" )
self .driver.quit()
def test_url_phantom( self ):
self .driver = webdriver.PhantomJS()
self .driver.get( "http://www.qq.com" )
self .driver.quit()
def tearDown( self ):
t = time.time() - self .startTime
print "%s: %.3f" % ( self . id (), t)
self .driver.quit
if __name__ = = '__main__' :
suite = unittest.TestLoader().loadTestsFromTestCase(TestThree)
unittest.TextTestRunner(verbosity = 0 ).run(suite)
|