本文整理汇总了Python中splinter.Browser.is_text_present方法的典型用法代码示例。如果您正苦于以下问题:Python Browser.is_text_present方法的具体用法?Python Browser.is_text_present怎么用?Python Browser.is_text_present使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类splinter.Browser
的用法示例。
在下文中一共展示了Browser.is_text_present方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: UserUtils
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
class UserUtils(object):
def __init__(self):
self.config = config.read_config()
self.account = self.config['account']
self.idp_server = self.config['nodes']['idp_node']
# Abort test if esgf-web-fe is not reachable
r = requests.get("https://{0}/esgf-web-fe".format(self.idp_server), verify=False, timeout=1)
assert r.status_code == 200
self.browser = Browser('firefox')
# Mapping user data to fit to web-fe user creation form
self.elements = {'firstName' : self.account['firstname'],
'lastName' : self.account['lastname'],
'email' : self.account['email'],
'userName' : self.account['username'],
'password1' : self.account['password'],
'password2' : self.account['password']}
def check_user_exists(self):
URL = "https://{0}/esgf-web-fe/login".format(self.idp_server)
OpenID = "https://{0}/esgf-idp/openid/{1}".format(self.idp_server, self.account['username'])
# Try to log in
self.browser.visit(URL)
self.browser.find_by_id('openid_identifier').fill(OpenID)
self.browser.find_by_value('Login').click()
# User does not exist if unable to resolve OpenID
if(self.browser.is_text_present("Error: unable to resolve OpenID identifier")):
self.user_exists = False
else:
self.user_exists = True
def create_user(self):
URL = "https://{0}/esgf-web-fe/createAccount".format(self.idp_server)
self.browser.visit(URL)
# Filling the form
for element_name in self.elements:
self.browser.find_by_name(element_name).fill(self.elements[element_name])
self.browser.find_by_value('Submit').click()
# Parsing response
self.response = []
if (self.browser.is_text_present("SUCCESS") == True):
self.response.append("SUCCESS")
else:
self.response.append("FAILURE")
selection = self.browser.find_by_tag('span')
for sel in selection:
if sel.has_class('myerror'):
self.response.append(sel.value)
def exit_browser(self):
self.browser.quit()
示例2: TestViews
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
class TestViews(unittest.TestCase):
def setUp(self):
""" Test setup """
self.browser = Browser("phantomjs")
# Set up the tables in the database
Base.metadata.create_all(engine)
# Create an example user
self.user = User(name="Alice", email="[email protected]",
password=generate_password_hash("test"))
session.add(self.user)
session.commit()
self.process = multiprocessing.Process(target=app.run, kwargs={"port": 8080})
self.process.start()
time.sleep(1)
def tearDown(self):
""" Test teardown """
# Remove the tables and their data from the database
self.process.terminate()
session.close()
engine.dispose()
Base.metadata.drop_all(engine)
self.browser.quit()
def test_2_add_post (self):
self.browser.visit("http://127.0.0.1:8080")
print ("current url = ", self.browser.url)
self.browser.driver.set_window_size(1920, 1080)
self.browser.click_link_by_text('login')
print ("current url = ", self.browser.url)
self.browser.fill("email", "[email protected]")
self.browser.fill("password", "test")
button = self.browser.find_by_css("button[type=submit]")
button.click()
print (self.browser.url)
add_link=self.browser.find_link_by_partial_text('add')
add_link.click()
print (self.browser.url)
title="test_acceptance_add_post"
self.browser.fill("title", title)
now=datetime.datetime.now()
now=str(now)
self.browser.fill("content", now)
button = self.browser.find_by_css("button[type=submit]")
button.click()
print(self.browser.url)
new_post_appears=self.browser.is_text_present(title) and self.browser.is_text_present(now)
print ("new_post_appears = ", new_post_appears)
self.assertEqual(new_post_appears, True)
示例3: RollbackTest
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
class RollbackTest(unittest.TestCase):
def setUp(self):
self.dashboard = os.environ.get("TSURU_DASHBOARD_URL")
self.browser = Browser()
self.oauth_login()
self.create_app()
def tearDown(self):
self.remove_app()
self.browser.quit()
def oauth_login(self):
self.browser.visit(self.dashboard)
self.browser.find_by_css(".btn").click()
email = os.environ.get("EMAIL")
password = os.environ.get("PASSWORD")
if not password:
password = getpass.getpass()
self.browser.fill("email", email)
self.browser.fill("password", password)
self.browser.find_by_css(".enabled").click()
def create_app(self):
url = "{}/apps/create/".format(self.dashboard)
self.browser.visit(url)
pool = os.environ.get("POOL")
team = os.environ.get("TEAM")
self.browser.fill("name", "tsuru-dashboard-automate-app")
self.browser.select("platform", "python")
self.browser.select("pool", pool)
self.browser.select("teamOwner", team)
self.browser.find_by_css(".btn").click()
self.browser.is_text_present("App was successfully created")
def remove_app(self):
app_name = "tsuru-dashboard-automate-app"
url = "{}/apps/{}/settings/".format(self.dashboard, app_name)
self.browser.visit(url)
self.browser.find_by_css(".btn-danger")[0].click()
time.sleep(1)
self.browser.find_by_css(".remove-confirmation").fill(app_name)
self.browser.find_by_css(".btn-remove").click()
def test_deploy(self):
pass
示例4: buyprd
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def buyprd(u):
browser = Browser('firefox')
url = u
browser.visit(url)
# 10|10.5
browser.find_option_by_text(selectOption).first.click()
browser.find_by_name('commit').click()
if browser.is_text_present('item'):
print("Added to Cart")
else:
print("Error")
return
print "checking out"
browser.visit(checkoutUrl)
print "Filling Out Billing Info"
browser.fill("order[billing_name]", namefield)
browser.fill("order[email]", emailfield)
browser.fill("order[tel]", phonefield)
print "Filling Out Address"
browser.fill("order[billing_address]", addressfield)
browser.fill("order[billing_zip]", zipfield)
browser.select("order[billing_state]", statefield)
print "Filling Out Credit Card Info"
browser.select("credit_card[type]", cctypefield)
browser.fill("credit_card[number]", ccnumfield)
browser.select("credit_card[month]", ccmonthfield)
browser.select("credit_card[year]", ccyearfield)
browser.fill("credit_card[verification_value]", cccvcfield)
browser.find_by_css('.terms').click()
print "Submitting Info"
browser.find_by_name('commit').click()
sys.exit(0)
示例5: test_0_http_browser_download
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def test_0_http_browser_download(self):
path = self.get_endpoint_path("HTTPServer")
url = "http://{0}/thredds/fileServer/{1}".format(self.data_node, path)
OpenID = "https://{0}/esgf-idp/openid/{1}".format(self.idp_node, self.username)
pf = {"browser.helperApps.neverAsk.saveToDisk": "application/x-netcdf, application/netcdf"}
browser = Browser("firefox", profile_preferences=pf)
browser.visit(url)
if browser.status_code.is_success() is True:
browser.quit()
return
browser.find_by_css("input.custom-combobox-input").fill(OpenID)
browser.find_by_value("GO").click()
browser.find_by_id("password").fill(self.password)
browser.find_by_value("SUBMIT").click()
# To Do only if user is not enrolled in a group
if browser.is_text_present("Group Registration Request"):
# Chosing First Registration Group
browser.find_by_id("button_1").click()
# Accepting License Agreement
browser.execute_script("myForm.submit();")
# Clicking on 'Download data button'
browser.find_by_id("goButton").click()
browser.quit()
示例6: test_0_http_browser_download
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def test_0_http_browser_download(self):
path = self.get_endpoint_path('HTTPServer')
url = "http://{0}/thredds/fileServer/{1}".format(self.data_node, path)
OpenID = "https://{0}/esgf-idp/openid/{1}".format(self.idp_node, self.username)
pf={'browser.helperApps.neverAsk.saveToDisk':'application/x-netcdf, application/netcdf'}
browser = Browser('firefox', profile_preferences=pf)
browser.visit(url)
if browser.status_code.is_success() is True:
browser.quit()
return
browser.find_by_id('openid_identifier').fill(OpenID)
browser.find_by_value('GO').click()
browser.find_by_id('password').fill(self.password)
browser.find_by_value('SUBMIT').click()
# To Do only if user is not enrolled in a group
if browser.is_text_present('Group Registration Request'):
# Chosing First Registration Group
browser.find_by_id('button_1').click()
# Accepting License Agreement
browser.execute_script('myForm.submit();')
# Clicking on 'Download data button'
browser.find_by_id('goButton').click()
browser.quit()
示例7: getRoutes
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def getRoutes(start,end):
browser = Browser(
driver_name="firefox"
)
browser.visit('https://www.hopstop.com/search?xfr=cityscape')
print(browser.url)
browser.fill('address1',str(start))
browser.fill('address2',str(end))
browser.find_by_name('get_dirs').click()
print(browser.url)
if browser.is_text_present('Did you mean?'):
print "better at least get here"
#browser.click_link_by_href("#")
for link in browser.find_link_by_href("#"):
print "Okay"
if link.visible == True:
print link.text
browser.click_link_by_text(link.text)
break
browser.click_link_by_href("#")
links = browser.find_link_by_partial_href("/station?stid")
results = []
for link in links:
results.append(link.value)
browser.quit()
return results
示例8: qd
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def qd():
## browser = Browser('firefox'
## , profile='D:\UsersDocuments\FFmissions')
browser = Browser('chrome')
browser.visit(juchaozhi)
time.sleep(1)
browser.find_by_name('username').fill(username)
browser.find_by_name('password').fill(password)
browser.find_by_name('button').click()
time.sleep(1)
if browser.is_text_present(username, wait_time=1):
print ('login success!')
logging.info('login success!')
browser.visit('http://best.pconline.com.cn/qiandao.html')
time.sleep(1)
## 添加今天是否有签到的判断,主要判断口id="JBar",或者判断CSS中的元素,如.signStatus,.isgnUps
if browser.find_by_css('.signStatus').visible:
print ('you had signed!')
logging.info('you had signed!')
browser.quit()
else:
browser.find_by_xpath('//*[@id="JSignBox"]/a').click()
time.sleep(1)
print ('mission success!')
logging.info('mission success!')
browser.quit()
else:
print ('login fail!!!')
logging.info('login fail!!!')
示例9: getRoutes
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def getRoutes(start, end):
browser = Browser(driver_name="firefox")
browser.visit("https://www.hopstop.com/search?xfr=cityscape")
print(browser.url)
browser.fill("address1", str(start))
browser.fill("address2", str(end))
browser.find_by_name("get_dirs").click()
print(browser.url)
if browser.is_text_present("Did you mean?"):
browser.click_link_by_href("#")
if browser.is_text_present("Did you mean?"):
browser.click_link_by_href("#")
browser.click_link_by_href("#")
links = browser.find_link_by_partial_href("/station?stid")
results = []
for link in links:
results.append(link.value)
return results
示例10: netflix
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def netflix(sentence, args):
netflix_config = config.load_config("netflix")
if netflix_config:
username = netflix_config['username']
password = keyring.get_password("netflix", username)
profile_name = netflix_config["profile_name"]
if username and password:
#TODO: change this to zope.testbrowser once it's working in the frontend
chrome_path = config.load_config("chrome_path")
executable_path = {'executable_path': chrome_path}
browser = Browser("Chrome")
browser.visit("https:///netflix.com/Login")
email_field = browser.find_by_name("email")
password_field = browser.find_by_name("password")
sign_in_xpath = '//*[@id="appMountPoint"]/div/div[2]/div/form[1]/button'
sign_in_button = browser.find_by_xpath(sign_in_xpath)
email_field.fill(username)
password_field.fill(password)
sign_in_button.click()
if browser.is_text_present(profile_name):
profile_button = browser.find_by_text(profile_name)
profile_button.click()
#Use ent code to find out if there's a named work of art that was detected
#search_tab_xpath = '//*[@id="hdPinTarget"]/div/div[1]/div/button'
#search_tab_xpath = '//*[@id="hdPinTarget"]/div/div[1]/div/button/span[1]'
search_tab_xpath = '//*[@id="hdPinTarget"]/div/div[1]/div/button'
search_tab = browser.find_by_xpath(search_tab_xpath)
search_tab.click()
if "netflix" in sentence:
if "netflix play "in sentence:
show = sentence.split("netflix play ")[1]
else:
show = sentence.split("netflix ")[1]
#search_field = browser.find_by_text("Titles, people, genres")[0]
search_field_xpath = '//*[@id="hdPinTarget"]/div/div[1]/div/div/input'
search_field = browser.find_by_xpath(search_field_xpath)
search_field.fill(show)
show_card_xpath = '//*[@id="title-card-undefined-0"]'
show_card = browser.find_by_xpath(show_card_xpath)
show_card.click()
play_icon_xpath = '//*[@id="title-card-undefined-0"]/div[2]/a/div/div'
play_icon = browser.find_by_xpath(play_icon_xpath)
play_icon.click()
play_button_xpath = '//*[@id="70279852"]/div[2]/a/div/div'
play_button = browser.find_by_xpath(play_button_xpath)
play_button.click()
#chromecast_button_xpath = '//*[@id="netflix-player"]/div[4]/section[2]/div[7]/div[2]/button'
#chromecast_button = browser.find_by_xpath(chromecast_button_xpath)
#chromecast_button.click()
return "Done"
else:
return "Profile {0} could not be found on the netflix page".format(str(profile_name))
else:
return "Netflix username and password could not be retrieved from config and keyring"
else:
return "Netflix config not found"
示例11: main
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def main(argv):
try:
opts, args = getopt.getopt(sys.argv[1:], "f:")
except getopt.GetoptError as err:
sys.exit(2)
global test_config
config_file_name = None
for o, a in opts:
if o == "-f":
config_file_name = a
else:
assert False, "unhandled option"
if config_file_name is None:
usage(argv)
sys.exit(1)
config_file = open(config_file_name, "r")
test_config = json.load(config_file)
browser = Browser()
browser.visit(test_config["url"])
# log in
browser.find_by_id("id_username").fill(test_config["username"])
browser.find_by_id("id_password").fill(test_config["password"])
browser.find_by_id("dijit_form_Button_0_label").click()
browser.find_by_id("tab_systemsettings_tablist_dijit_layout_ContentPane_1").click()
browser.find_by_id("btn_AdvancedForm_FwUpdate_label").click()
browser.find_by_id("btn_FirmwareTemporaryLocationForm_Ok_label").click()
e = browser.find_by_id("id_1-firmware")
e.fill(test_config["upgrade_file"])
e = browser.find_by_id("id_1-sha256")
sha256_checksum = get_sha256_checksum_from_file(test_config["upgrade_file"] + ".sha256.txt")
e.fill(sha256_checksum)
quit = False
while quit == False:
try:
if browser.is_text_present("System is rebooting", 20):
print "System is rebooting"
quit = True
except:
print "Found exception"
quit = True
time.sleep(10)
browser.quit()
示例12: TestViews
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
class TestViews(unittest.TestCase):
def setUp(self):
""" Test setup """
self.browser = Browser("phantomjs")
# Set up the tables in the database
Base.metadata.create_all(engine)
# Create an example
self.user = models.User(name="Alice", email="[email protected]",
password=generate_password_hash("test"))
session.add(self.user)
session.commit()
self.process = multiprocessing.Process(target=app.run)
self.process.start()
time.sleep(1)
def tearDown(self):
""" Test teardown """
# Remove the tables and their data from the database
self.process.terminate()
session.close()
engine.dispose()
Base.metadata.drop_all(engine)
self.browser.quit()
def login(self, email, password):
self.browser.visit(TEST_SITE + "login")
self.browser.fill("email", email)
self.browser.fill("password", password)
button = self.browser.find_by_css("button[type=submit]")
button.click()
def test_login_correct(self):
self.login("[email protected]", "test")
self.assertEqual(self.browser.url, TEST_SITE)
def test_login_incorrect(self):
self.login("[email protected]", "test")
self.assertEqual(self.browser.url, TEST_SITE + "login")
def test_add_post(self):
self.login ("[email protected]", "test")
self.browser.visit(TEST_SITE + "post/add")
self.browser.fill("title", "acceptance test post 1")
self.browser.fill("content", "this is the content for the test case")
button = self.browser.find_by_css("button[type=submit]")
button.click()
self.assertEqual(self.browser.url, TEST_SITE)
self.assertTrue(
self.browser.is_text_present("acceptance test post 1"))
示例13: qd
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def qd():
browser = Browser('firefox',
profile = 'D:\UsersDocuments\FFmissions',
user_agent = "Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)")
browser.visit(xiaomi)
## time.sleep(1)
browser.find_by_id('username').fill(username)
browser.find_by_id('userPwd').fill(password)
browser.find_by_id('login_button').click()
## time.sleep(1)
if browser.is_text_present(username, wait_time=1):
print ('login success!!')
logging.info('%s login success!!'%username)
browser.visit('http://bbs.xiaomi.cn/qiandao/')
## time.sleep(1)
## 添加今天是否有签到的判断,有很多判断方式by_xpath,by_id,by_class
if browser.find_by_id("qdbn2").visible:
print ('you had signed!')
logging.info('you had signed!')
else:
browser.find_by_id('share').click()
## time.sleep(1)
print ('qd success!!')
logging.info('qd success!!')
## browser.visit('http://bbs.xiaomi.cn/forum.php?mobile=no')
browser.visit('http://home.xiaomi.cn/home.php?mod=task&do=apply&id=81')
if browser.is_text_present(u'\u672c\u671f\u60a8\u5df2\u7533\u8bf7\u8fc7\u6b64\u4efb\u52a1'):
print ('done!')
logging.info('done!')
browser.quit()
else:
browser.visit('http://home.xiaomi.cn/home.php?mod=task&do=draw&id=81')
if browser.is_text_present(u'\u4efb\u52a1\u5df2\u6210\u529f\u5b8c\u6210'):
print ('mission success!!')
logging.info('mission success!!')
browser.quit()
else:
print ('login fail!!!')
logging.info('login fail!!!')
示例14: testLoginWithWrongCredentialsFails
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def testLoginWithWrongCredentialsFails():
browser = Browser()
browser.visit('http://127.0.0.1:8000')
browser.fill_form({'username': 'admin'})
browser.fill_form({'password': 'falsepw'})
browser.find_by_value('Anmelden').click()
if browser.is_text_present('Your login credentials are incorrect'):
print "Test passed"
else:
print "Test failed"
browser.quit()
示例15: test2
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import is_text_present [as 别名]
def test2(address, emm_stuff):
address_tmp = address.split(',')
address = "%s, %s, %s, %s"%(address_tmp[0],address_tmp[1],state,address_tmp[2])
try_again = True
while (try_again):
try:
f = open(filename,'a')
browser = Browser()
browser.visit('http://www.centurylink.com/')
browser.find_by_id('landingRes').first.click()
browser.find_by_id('home-speed-check').first.click()
browser.find_by_id('ctam_new-customer-link').first.click()
browser.is_text_present('Please enter your service address so we can show you accurate pricing product availability in your area', wait_time=5)
browser.fill('form.singleLineAddress', address)
browser.is_element_present_by_css('.ui-autocomplete.ui-menu.ui-widget.ui-widget-content.ui-corner-all', 15)
addressFound = browser.find_by_css('.ui-autocomplete.ui-menu.ui-widget.ui-widget-content.ui-corner-all li a').first.text
browser.find_by_css('.ui-autocomplete.ui-menu.ui-widget.ui-widget-content.ui-corner-all li a').first.click()
addressFound_formatted = re.sub(r'%s (\d+)'%(state), r'%s,\1'%(state), addressFound)
addressFound_formatted = re.sub(',USA', '', addressFound_formatted)
browser.is_text_present('Choose an Offer', wait_time=5)
try:
element = browser.find_by_css('.highestSpeed')
except:
element = browser.find_by_css('.dialupOnly')
extracted_speed_match = re.search("(\d+\.?\d?)",element.text)
output = re.sub('\s+',' ', addressFound_formatted+', '+extracted_speed_match.group(0))
print output
f.write(output+",%s,%s,%s\n"%(emm_stuff[0], emm_stuff[1],emm_stuff[2]))
browser.quit()
try_again=False
f.close()
except:
try_again = False
e = open('bad_addresses','a')
e.write(address+'\n')
e.close()
browser.quit()