Windows下安装setuptools和pip:
https://bootstrap.pypa.io/ez_setup.py
https://bootstrap.pypa.io/get-pip.py
python ez_setup.py
python get-pip.py
安装selenium:
pip install selenium
安装PhantomJS:
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
使用示例:
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get("http://www.baidu.com")
data = driver.title
print data
通过Remote Selenium Server:
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速度对比:
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)
远程连接chrome:
google-chrome --remote-debugging-port=9222 --no-sandbox
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://91porn.com")
html = driver.page_source
print(html)
time.sleep(2000)
driver.quit()
远程连接firefox:
firefox -marionette -start-debugger-server 2828
import time
from selenium import webdriver
from selenium.webdriver.firefox.service import Service
firefox_services = Service(executable_path='/usr/bin/geckodriver', port=3000, service_args=['--marionette-port', '2828', '--connect-existing'])
driver = webdriver.Firefox(service=firefox_services)
driver.get("https://91porn.com")
pageSource = driver.page_source
print(pageSource)
driver.quit()
#import time
#from selenium.webdriver import Firefox
#from selenium import webdriver
#driver = webdriver.Firefox()
#driver.get("https://91porn.com")
#html = driver.page_source
#print(html)
#time.sleep(2000)
标签:none