本文整理汇总了Python中xvfbwrapper.Xvfb类的典型用法代码示例。如果您正苦于以下问题:Python Xvfb类的具体用法?Python Xvfb怎么用?Python Xvfb使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Xvfb类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: start_xvfb
def start_xvfb():
from xvfbwrapper import Xvfb
if "DISPLAY" in os.environ:
del os.environ["DISPLAY"]
xvfb = Xvfb()
xvfb.start()
atexit.register(xvfb.stop)
开发者ID:acemaster,项目名称:AnimeReminder,代码行数:7,代码来源:xvfb.py
示例2: main
def main():
import sys
import imageio
import pandas as pd
import matplotlib.pyplot as plt
from xvfbwrapper import Xvfb
plt.ioff()
# with Xvfb() as xvfb:
# plt.ioff()
vdisplay = Xvfb()
vdisplay.start()
if len(sys.argv)<5:
subsampleRate = 10
else:
subsampleRate = int(sys.argv[4])
if len(sys.argv)<6:
speedup = 10
else:
speedup = int(sys.argv[5])
bounds2video(sys.argv[1],sys.argv[2],sys.argv[3],subsampleRate,speedup)
vdisplay.stop()
开发者ID:valentina-s,项目名称:OOIVideos,代码行数:26,代码来源:bounds2video.py
示例3: Webdriver
class Webdriver(unittest.TestCase):
def setUp(self):
self.vdisplay = Xvfb(width=1280, height=720)
self.vdisplay.start()
# if(not vdisplay.start()):
# fo = open(LOG_FILE, "a")
# fo.write("Xvfbfailure||"+str(TREATMENTID)+"||"+str(ID)+"\n")
# fo.close()
# sys.exit(0)
if(BROWSER=='firefox'):
if (platform.system()=='Darwin'):
self.driver = webdriver.Firefox()
elif (platform.system()=='Linux'):
self.driver = webdriver.Firefox(proxy=proxy)
else:
print "Unidentified Platform"
sys.exit(0)
elif(BROWSER=='chrome'):
if (platform.system()=='Darwin'):
chromedriver = "./experiment/chromedriver/chromedriver_mac"
os.environ["webdriver.chrome.driver"] = chromedriver
self.driver = webdriver.Chrome(executable_path=chromedriver)
elif (platform.system() == 'Linux'):
chromedriver = "./experiment/chromedriver/chromedriver_linux"
os.environ["webdriver.chrome.driver"] = chromedriver
chrome_option = webdriver.ChromeOptions()
chrome_option.add_argument("--proxy-server=yogi.pdl.cmu.edu:3128" )
self.driver = webdriver.Chrome(executable_path=chromedriver, chrome_options=chrome_option)
else:
print "Unidentified Platform"
sys.exit(0)
else:
print "Unsupported Browser"
sys.exit(0)
self.driver.implicitly_wait(10)
self.base_url = "https://www.google.com/"
self.verificationErrors = []
self.driver.set_page_load_timeout(40)
self.accept_next_alert = True
def test_webdriver(self):
fo = open(AD_FILE, "w")
fo.close()
driver = self.driver
driver.get(SITE)
count = 0
while(count < N):
els = driver.find_elements_by_css_selector("li.site-listing div.desc-container p.desc-paragraph a")
for el in els:
if(count < N):
t = el.get_attribute('innerHTML').lower()
fo = open(AD_FILE, "a")
fo.write(t + '\n')
fo.close()
count += 1
driver.find_element_by_css_selector("a.next").click()
def tearDown(self):
self.vdisplay.stop()
self.driver.quit()
开发者ID:ninozong,项目名称:info-flow-experiments,代码行数:60,代码来源:alexa.py
示例4: XvfbRobot
class XvfbRobot(object):
"""
A robot library for creating virtual display on demand
"""
ROBOT_LIBRARY_SCOPE = "GLOBAL"
ROBOT_LIBRARY_VERSION = VERSION
_display = None
def start_virtual_display(self, width=1440, height=900, colordepth=24, **kwargs):
"""Starts virtual display which will be
destroyed after test execution will be end
*Arguments:*
- width: a width to be set in pixels
- height: a height to be set in pixels
- color_depth: a color depth to be used
- kwargs: extra parameters
*Example:*
| Start Virtual Display |
| Start Virtual Display | 1920 | 1080 |
| Start Virtual Display | ${1920} | ${1080} | ${16} |
"""
if self._display is None:
logger.info("Using virtual display: '{0}x{1}x{2}'".format(width, height, colordepth))
self._display = Xvfb(int(width), int(height), int(colordepth), **kwargs)
self._display.start()
atexit.register(self._display.stop)
开发者ID:drobota,项目名称:robotframework-xvfb,代码行数:31,代码来源:__init__.py
示例5: get_mtgox_info
def get_mtgox_info(input_vars):
vdisplay = Xvfb()
vdisplay.start()
driver = webdriver.Firefox()
driver.get("http://www.mtgox.com")
uelem = driver.find_element_by_name("username")
pelem = driver.find_element_by_name("password")
lelem = driver.find_element_by_name("LOGIN")
uelem.send_keys(input_vars['mtgoxId'])
time.sleep(0.25)
pelem.send_keys(input_vars['mtgoxPassword'])
time.sleep(0.25)
lelem.click()
time.sleep(0.25)
driver.get("https://www.mtgox.com/trade/funding-options")
time.sleep(0.25)
logout_button = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CLASS_NAME, "logout")))
address_elem = driver.find_elements_by_xpath("/html/body/div[2]/div[2]/div[3]/div[3]/section/div/div[4]/div[2]/div/p/strong")
print address_elem
new_address=address_elem.text
开发者ID:ianrust,项目名称:coinbase_to_mtgox,代码行数:28,代码来源:coinbaseToMtgox.py
示例6: Xvfb
class Xvfb(Plugin):
def options(self, parser, env):
super(Xvfb, self).options(parser, env)
parser.add_option("--with-xvfb-options", action="store",
dest="xvfb_options",
default=env.get("NOSE_WITH_XVFB_OPTIONS"),
help="Options to pass to Xvfb. Comma delimited with "
"equals as separators if necessary. "
"E.g. \"extension=SELINUX, once\". Currently, there is no "
"way to provide options that begin with a +. This is a limitation "
"in xvfbwrapper. Repetition is not allowed. [NOSE_WITH_XVFB_OPTIONS]")
def configure(self, options, noseconfig):
super(Xvfb, self).configure(options, noseconfig)
self.xvfb_options = {}
if options.xvfb_options:
opts = [x.strip() for x in options.xvfb_options.split(",")]
for item in opts:
key, sign, value = item.partition("=")
if not value:
value = ''
self.xvfb_options[key] = value
def begin(self):
logger.info('Starting xvfb virtual display 1024x768 with %s' % self.xvfb_options)
self.vdisplay = XvfbWrapper(width=1024, height=768, **self.xvfb_options)
self.vdisplay.start()
def finalize(self, result):
logger.info('Stopping xvfb virtual display')
self.vdisplay.stop()
开发者ID:awood,项目名称:nose-xvfb,代码行数:31,代码来源:xvfb.py
示例7: TestJavascript
class TestJavascript(unittest.TestCase):
def setUp(self):
# Configure a web service.
handler = http.server.SimpleHTTPRequestHandler
address = ("127.0.0.1", 9999)
socketserver.TCPServer.allow_reuse_address = True # Prevents address conflicts.
httpd = socketserver.TCPServer(address, handler)
# Start the web service in a separate thread as deamon.
httpd_thread = threading.Thread(target=httpd.serve_forever)
httpd_thread.setDaemon(True)
httpd_thread.start()
# Start a display.
self.display = Xvfb()
self.display.start()
# Start the browser driver for selenium testing.
self.driver = webdriver.Firefox()
self.driver.get("http://localhost:9999/index.html")
def test_javascript(self):
# Create an instance of the selenium Firefox driver.
error = self.driver.find_elements_by_id("error")[0].text
self.assertEqual(error, "")
def tearDown(self):
self.display.stop()
开发者ID:trollsofthenorth,项目名称:ludumdare36,代码行数:30,代码来源:test.py
示例8: start_xvfb
def start_xvfb(module):
try:
xvfb = Xvfb(width=1280, height=720)
xvfb.start()
atexit.register(xvfb.stop)
except:
module.fail_json(msg="xvfb broke")
开发者ID:jcpowermac,项目名称:ansible-selenium-module,代码行数:7,代码来源:selenium.py
示例9: BaseTestCase
class BaseTestCase(unittest.TestCase):
def setUp(self):
self.xvfb = os.environ.get("ENABLE_XVFB", False)
self.browser = os.environ.get("BROWSER", "Chrome")
if self.xvfb:
self.vdisplay = Xvfb(width=1280, height=720)
self.vdisplay.start()
if self.browser == "Firefox":
self.driver = self.get_ff_driver()
else:
self.driver = self.get_chrome_driver()
self.load = self.driver.get
def tearDown(self):
if self.driver:
self.driver.quit()
if self.xvfb and self.vdisplay:
self.vdisplay.stop()
def get_ff_driver(self):
return webdriver.Firefox()
def get_chrome_driver(self):
opts = Options()
if "TRAVIS" in os.environ: # github.com/travis-ci/travis-ci/issues/938
opts.add_argument("--no-sandbox")
# Fix for https://code.google.com/p/chromedriver/issues/detail?id=799
opts.add_experimental_option("excludeSwitches",
["ignore-certificate-errors"])
return webdriver.Chrome(chrome_options=opts)
开发者ID:pebreo,项目名称:closerlook-seldemo,代码行数:31,代码来源:basic_test.py
示例10: __init__
def __init__(self):
log.start(logfile=time.strftime("log/%Y%m%d%H%M%S")+".log",logstdout=False)
log.msg("initiating crawler...",level=log.INFO)
self.crawler_id = self.get_crawler_id()
log.msg("crawler id is %s" % self.crawler_id,level=log.INFO)
self.r.set('crawler:ip:%s' % self.crawler_id,utils.get_external_ip())
self.r.set('crawler:port:%s' % self.crawler_id,settings.REDIS_LOCAL_PORT)
self.r.set('crawler:mapping_port:%s' % self.crawler_id,settings.REDIS_LOCAL_MAPPING_PORT)
log.msg("crawler ip is %s, port is %d" % (utils.get_external_ip(),settings.REDIS_LOCAL_PORT),level=log.INFO)
account = self.get_account()
self.username = account[0]
self.password = account[1]
log.msg("crawler account got",level=log.INFO)
self.r_local.set('crawler:status:%s' % self.crawler_id, 'good')
self.r_local.set('crawler:update_time:%s' % self.crawler_id, datetime.datetime.utcnow().strftime("%s"))
log.msg("local crawler status set",level=log.INFO)
heartbeat_thread = threading.Thread(target=self.maintain_local_heartbeat)
heartbeat_thread.start()
log.msg("local crawler heartbeat started",level=log.INFO)
if platform.system() == "Linux":
#on linux, use virtual display
vdisplay = Xvfb()
vdisplay.start()
co = ChromeOptions()
#TODO: Disable image after log in
#TODO: optimize memory usage
co.add_experimental_option("prefs",{"profile.default_content_settings":{"popups":1}})
#co.add_experimental_option("prefs",{"profile.default_content_settings":{"popups":1,"images":2,"media":2}})
self.driver = webdriver.Chrome(chrome_options=co)
self.driver.set_window_size(640,960)
开发者ID:1060460048,项目名称:zhihu-scrapy,代码行数:30,代码来源:zhihu_people.py
示例11: MainTest
class MainTest(unittest.TestCase):
def setUp(self):
self.xvfb = Xvfb(width=1280, height=720)
self.xvfb.start()
self.browser = webdriver.Firefox()
self.addCleanup(self.browser.quit)
def test_main(self):
self.browser.get("http://www.youtube.com")
#self.browser.get("http://www.youtube.com//results?search_query=ionic")
search = self.browser.find_element_by_id("masthead-search-term")
search.send_keys('angular',Keys.RETURN)
self.browser.implicitly_wait(2)
self.browser.save_screenshot("youtube.png")
'''
with open('youtube.html','w') as html:
page = driver.page_source
html.write(page.encode('utf-8'))
'''
link_elements = self.browser.find_elements_by_xpath("//a[@title]")
f = csv.writer(open("youtube.csv", "w"))
f.writerow(["Name", " Link"])
for element in link_elements:
if len(element.text) > 5:
name = element.text
f.writerow([name.encode('utf-8')," "+ element.get_attribute("href")])
开发者ID:wonderfan,项目名称:python,代码行数:31,代码来源:youtube.py
示例12: enable
def enable():
import time
import requests
import settings
from splinter import Browser
from xvfbwrapper import Xvfb
print "Trying to enable myself."
vdisplay = Xvfb()
vdisplay.start()
email = settings.getEmail()
password = settings.getPassword()
team_name = settings.getTeamName()
bot_user = settings.getBotUser()
browser = Browser('chrome')
url = 'https://{}.slack.com/services/{}'.format(team_name, bot_user)
browser.visit(url)
browser.fill('email', email)
browser.fill('password', password)
browser.find_by_id('signin_btn').first.click()
browser.find_link_by_text('Enable').first.click()
time.sleep(2) # Sometimes I saw a crash where there was no alert, so we'll wait a bit first.
alert = browser.get_alert()
alert.accept()
time.sleep(2) # If you close the display too quickly, the request doesn't get processed.
vdisplay.stop()
开发者ID:chaosking121,项目名称:mal,代码行数:30,代码来源:shenanigans.py
示例13: test_start_with_arbitrary_kwargs
def test_start_with_arbitrary_kwargs(self):
xvfb = Xvfb(nolisten='tcp', noreset=None)
self.addCleanup(xvfb.stop)
xvfb.start()
display_var = ':{}'.format(xvfb.new_display)
self.assertEqual(display_var, os.environ['DISPLAY'])
self.assertIsNotNone(xvfb.proc)
开发者ID:cjauvin,项目名称:xvfbwrapper,代码行数:7,代码来源:test_xvfb.py
示例14: test_start
def test_start(self):
xvfb = Xvfb()
self.addCleanup(xvfb.stop)
xvfb.start()
display_var = ':{}'.format(xvfb.new_display)
self.assertEqual(display_var, os.environ['DISPLAY'])
self.assertIsNotNone(xvfb.proc)
开发者ID:cjauvin,项目名称:xvfbwrapper,代码行数:7,代码来源:test_xvfb.py
示例15: PBSeleniumTest
class PBSeleniumTest(unittest.TestCase):
def setUp(self):
env = os.environ
self.browser_bin = env.get("BROWSER_BIN", "") # o/w use WD's default
if "TRAVIS" in os.environ:
self.xvfb = 1
else:
# by default don't use XVFB if we are not running on CI
self.xvfb = int(env.get("ENABLE_XVFB", 0))
self.pb_ext_path = self.get_extension_path() # path to the extension
if self.xvfb:
self.vdisplay = Xvfb(width=1280, height=720)
self.vdisplay.start()
self.driver = self.get_chrome_driver()
self.js = self.driver.execute_script
def load_url(self, url, wait_on_site=0):
"""Load a URL and wait before returning."""
self.driver.get(url)
sleep(wait_on_site)
def get_extension_path(self):
"""Return the path to the extension to be tested."""
if "PB_EXT_PATH" in os.environ:
return os.environ["PB_EXT_PATH"]
else: # check the default path if PB_EXT_PATH env. variable is empty
print "Can't find the env. variable PB_EXT_PATH, will check ../.."
# if the PB_EXT_PATH environment variable is not set
# check the default location for the last modified crx file
exts = glob("../../*.crx") # get matching files
return max(exts, key=os.path.getctime) if exts else ""
def txt_by_css(self, css_selector, timeout=SEL_DEFAULT_WAIT_TIMEOUT):
"""Find an element by CSS selector and return it's text."""
return self.find_el_by_css(css_selector, timeout).text
def find_el_by_css(self, css_selector, timeout=SEL_DEFAULT_WAIT_TIMEOUT):
return WebDriverWait(self.driver, timeout).until(
EC.presence_of_element_located((By.CSS_SELECTOR, css_selector)))
def get_chrome_driver(self):
"""Setup and return a Chrom[e|ium] browser for Selenium."""
opts = Options()
absp = os.path.abspath
if "TRAVIS" in os.environ: # github.com/travis-ci/travis-ci/issues/938
opts.add_argument("--no-sandbox")
opts.add_extension(self.pb_ext_path) # will fail if ext can't be found
if self.browser_bin: # otherwise will use webdriver's default binary
print "Browser binary:", absp(self.browser_bin)
opts.binary_location = self.browser_bin # set binary location
# Fix for https://code.google.com/p/chromedriver/issues/detail?id=799
opts.add_experimental_option("excludeSwitches",
["ignore-certificate-errors"])
return webdriver.Chrome(chrome_options=opts)
def tearDown(self):
self.driver.quit()
if self.xvfb and self.vdisplay:
self.vdisplay.stop()
开发者ID:Hainish,项目名称:privacybadgerchrome,代码行数:59,代码来源:pbtest.py
示例16: set_up
def set_up():
global browser
global xvfb
xvfb = Xvfb(width=1280, height=720, colordepth=24)
xvfb.start()
browser = webdriver.Chrome()
print browser.title
print ':%d' % xvfb.vdisplay_num
开发者ID:grayleonard,项目名称:xvfb-record,代码行数:8,代码来源:login.py
示例17: test_with_xvfb
def test_with_xvfb():
if use_xvfb:
from xvfbwrapper import Xvfb
display = Xvfb(width=1920, height=1080)
display.start()
my_test()
if use_xvfb:
display.stop()
开发者ID:MPDean,项目名称:dipy,代码行数:8,代码来源:decorators.py
示例18: xvfb
def xvfb(self, line, cell=None):
display = Xvfb(**self.xvfb_kwargs)
display.start()
if cell is None:
self.shell.ex(line)
else:
self.shell.ex(cell)
display.stop()
开发者ID:arokem,项目名称:xvfbmagic,代码行数:8,代码来源:xvfbmagic.py
示例19: test_stop
def test_stop(self):
orig_display = os.environ['DISPLAY']
xvfb = Xvfb()
xvfb.start()
self.assertNotEqual(orig_display, os.environ['DISPLAY'])
xvfb.stop()
self.assertIsNone(xvfb.proc)
self.assertEqual(orig_display, os.environ['DISPLAY'])
开发者ID:balagopalraj,项目名称:clearlinux,代码行数:8,代码来源:test_xvfb.py
示例20: Webdriver
class Webdriver(unittest.TestCase):
def setUp(self):
self.vdisplay = Xvfb(width=1280, height=720)
self.vdisplay.start()
# if(not vdisplay.start()):
# fo = open(LOG_FILE, "a")
# fo.write("Xvfbfailure||"+str(TREATMENTID)+"||"+str(ID)+"\n")
# fo.close()
# sys.exit(0)
if(BROWSER=='firefox'):
if (platform.system()=='Darwin'):
self.driver = webdriver.Firefox()
elif (platform.system()=='Linux'):
self.driver = webdriver.Firefox(proxy=proxy)
else:
print "Unidentified Platform"
sys.exit(0)
elif(BROWSER=='chrome'):
print "WARNING: Expecting chromedriver at specified location !!"
if (platform.system()=='Darwin'):
chromedriver = "./experiment/chromedriver/chromedriver_mac"
os.environ["webdriver.chrome.driver"] = chromedriver
self.driver = webdriver.Chrome(executable_path=chromedriver)
elif (platform.system() == 'Linux'):
chromedriver = "./experiment/chromedriver/chromedriver_linux"
os.environ["webdriver.chrome.driver"] = chromedriver
chrome_option = webdriver.ChromeOptions()
chrome_option.add_argument("--proxy-server=yogi.pdl.cmu.edu:3128" )
self.driver = webdriver.Chrome(executable_path=chromedriver, chrome_options=chrome_option)
else:
print "Unidentified Platform"
sys.exit(0)
else:
print "Unsupported Browser"
sys.exit(0)
self.driver.implicitly_wait(10)
self.base_url = "https://www.google.com/"
self.verificationErrors = []
self.driver.set_page_load_timeout(40)
self.accept_next_alert = True
def test_webdriver(self):
driver = self.driver
cole.optIn(driver)
driver.get(SITE)
time.sleep(20)
#raw_input("wait")
pref = cole.get_ad_pref(driver)
print SITE
print 'pref=', pref
if pref != []:
fo = open(TARGET_FILE, "a")
fo.write(SITE+"||"+"@".join(pref)+'\n')
fo.close()
def tearDown(self):
self.vdisplay.stop()
self.driver.quit()
开发者ID:chakrajagan,项目名称:AdFisher,代码行数:58,代码来源:shortlist.py
注:本文中的xvfbwrapper.Xvfb类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论