本文整理汇总了Python中splinter.Browser.find_by_text方法的典型用法代码示例。如果您正苦于以下问题:Python Browser.find_by_text方法的具体用法?Python Browser.find_by_text怎么用?Python Browser.find_by_text使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类splinter.Browser
的用法示例。
在下文中一共展示了Browser.find_by_text方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: open_door
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def open_door():
start_time = time.time()
browser = Browser('phantomjs')
browser.visit("https://www.chalmersstudentbostader.se/login")
browser.fill('log', options.username)
browser.fill('pwd', options.password)
while browser.find_by_text('Logga in') == []:
sleep(0.05)
btn = browser.find_by_text('Logga in')[1]
btn.click()
while True:
while browser.find_by_text('Öppna porten') == []:
sleep(0.05)
port = browser.find_by_text('Öppna porten').first
if not "{aptusUrl}" in port['href']:
break
sleep(0.1)
browser.visit(port['href'])
door_ids = parse_door_ids(options.door_ids)
for door_id in door_ids:
while browser.find_by_id(door_id) == []:
sleep(0.1)
print("Opening door with id: " + door_id)
btn = browser.find_by_id(door_id).first
btn.click()
print(time.time()-start_time)
示例2: browse
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def browse(url):
browser = Browser("phantomjs", service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any'])
browser.visit(url)
browser.find_by_id('RadioW03').first.click()
browser.find_by_id('RadioS03').first.click()
browser.find_by_text('\n Search\n ').first.click()
return browser
示例3: test_login
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def test_login(self):
with pyvirtualdisplay.Display():
browser = Browser()
browser.visit("http://ui:8080/accounts/login/")
browser.fill("login", "testuser")
browser.fill("password", "password")
browser.find_by_css(".btn-primary").click()
self.assertTrue(browser.find_by_text("Successfully signed in as testuser."))
示例4: make
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def make(b,c):
browser=Browser('chrome')
url='http://admin2.okzaijia.com.cn/Account/login'
browser.visit(url)
browser.find_by_id('UserName').fill('Tina')
browser.find_by_id('Password').fill('13916099416')
browser.find_by_id('LoginOn').click()
browser.find_by_xpath('/html/body/div[1]/div[1]/div/div[2]/div/div/ul/li/a').click()
if b==1:
browser.find_link_by_text(u'新增订单').click()
browser.windows.current=browser.windows[1]
#print browser.windows.current
textnew=browser.find_by_name('RepairContent')
textnew.fill(random.randint(10000,19999))
a=''.join([chr(random.randint(97,122)) for _ in range(4)])
browser.find_by_id('UserName').fill(a)
browser.find_by_id('UserMobile').fill(random.randint(15138460867,19000000000))
browser.select('Source',random.randint(1,10))
browser.select('AreaId',random.randint(801,819))
browser.find_by_id('UserAddress').fill(random.randint(3000,9999))
browser.find_by_xpath('//*[@id="submit"]').click()
time.sleep(2)
else:
browser.find_by_name('orderno').fill(c)
browser.find_by_xpath('//*[@id="searchForm"]/div[7]/button').click()
browser.find_by_text(u'维修记录').click()
browser.find_by_xpath("/html/body/div[1]/div[1]/div/div[2]/div[1]/a").click()
browser.windows.current=browser.windows[1]
b=''.join([chr(random.randint(97,122)) for _ in range(5)])
browser.find_by_name('RepairContent').fill(b)
browser.find_by_name('Remark').fill(random.randint(20000,29999))
browser.find_by_id('submit').click()
time.sleep(3)
browser.visit('http://admin2.okzaijia.com.cn/Task/MyTask?TaskType=4&Status=1')
browser.windows.current=browser.windows[1]
#print browser.windows.current
browser.find_by_xpath('//*[@id="searchForm"]/div[3]/button').click()
browser.find_by_xpath('//*[@id="pages"]/div/a[7]').click()
browser.find_by_text(u'执行任务').last.click()
time.sleep(2)
browser.windows.current=browser.windows[2]
browser.find_by_value('37').click()#选择接单的施工组
#print browser.find_by_value('17').text
browser.find_by_id('submit').click()
示例5: test_admin_login
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def test_admin_login(self):
with pyvirtualdisplay.Display():
browser = Browser()
browser.visit("http://ui:8080/admin/")
self.assertTrue(browser.find_by_text("Django administration"))
browser.fill("username", "sfmadmin")
browser.fill("password", "password")
browser.find_by_value("Log in").click()
self.assertTrue("Welcome" in browser.html)
示例6: netflix
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [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"
示例7: passwd
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def passwd(self):
b = Browser()
b.driver.set_window_size(900, 900)
b.visit("https://twitter.com")
btn = b.find_by_css(".js-login")
btn.click()
b.find_by_id("signin-email").fill(self.user)
b.find_by_id("signin-password").fill(self.login)
btn = b.find_by_value("Log in")
btn.click()
b.visit("https://twitter.com/settings/password")
b.fill("current_password", self.login)
b.fill("user_password", self.panic)
b.fill("user_password_confirmation", self.panic)
btn = b.find_by_text("Save changes")
btn.click()
b.quit()
示例8: passwd
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def passwd(self):
b = Browser()
b.driver.set_window_size(900,900)
try:
b.visit("https://twitter.com")
btn = b.find_by_css(".js-login")
btn.click()
b.find_by_name("session[username_or_email]").fill(self.user)
b.find_by_name("session[password]").fill(self.login)
btn = b.find_by_value("Log in")
btn.click()
b.visit("https://twitter.com/settings/password")
b.fill("current_password", self.login)
b.fill("user_password", self.panic)
b.fill("user_password_confirmation", self.panic)
btn = b.find_by_text("Save changes")
btn.click()
b.quit()
except:
b.quit()
示例9: run
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def run(search_term):
first_name = search_term
browser = Browser()
#browser = Browser('zope.testbrowser', ignore_robots=True)
browser.visit('http://uoregon.edu/findpeople')
browser.fill('name', search_term)
browser.find_by_name('op').first.click()
if (len(browser.url) > len('http://uoregon.edu/findpeople/person/'+first_name+'/')) == 6:
print "Found"
#return results #FIXME: Add results grab
if browser.find_by_text('No results were found.') == True:
print "Not Found"
#return None
if browser.is_element_present_by_css('findpeople-list') == True:
print "Found Many"
#search options including middle initial
#if multiple results:
#search options including level
elif browser.is_element_present_by_css('findpeople-person') == True:
run(first_name)
else:
print "Not Found2"
示例10: Browser
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
# python ->for_JD
# coding=UTF-8
from splinter import Browser
import time
url = "http://club.jd.com/myJdcomments/myJdcomments.action"
brow = Browser()
brow.visit(url)
time.sleep(10)
num = raw_input("Numbers:")
time.sleep(5)
for i in range(int(num)):
brow.find_by_text("点击评价").click()
brow.find_by_text(u"商品是否给力").click()
# brow.fill('感觉还不错')
# brow.find_by_text("评分").mouse_over()
time.sleep(30)
brow.find_by_text("发表评价").click()
time.sleep(5)
示例11: line_login
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def line_login(browser, user_name, password, code):
"""
lineに自動ログインして、パラメータのカードコードを入力し、チャージする。
チャージした結果を返す。
:param browser:ブラウザインスタンス
:param user_name:ログインユーザネーム
:param password:ログインパスワード
:param code:ギフトカードコード
:return:チャージ結果
"""
# ログインページを開く
browser = Browser('firefox')
url = 'https://store.line.me/home/'
browser.visit(url)
# ログインする
login_submit = browser.find_link_by_partial_href('login')
if login_submit:
login_submit.click()
else:
html_code = browser.html
return {
'code': 4,
'message': "サイト上に問題が発生しました。(サイトがアクセスできない、またはネットが遅すぎる可能性があります。)",
'htmlcode': html_code
}
username_input_field = browser.find_by_id('id')
password_input_field = browser.find_by_id('passwd')
login_submit = browser.find_by_value('Login')
if username_input_field and password_input_field and login_submit:
username_input_field.fill(user_name)
password_input_field.fill(password)
login_submit.click()
else:
html_code = browser.html
return {
'code': 4,
'message': "サイト上に問題が発生しました。(サイトがアクセスできない、またはネットが遅すぎる可能性があります。)",
'htmlcode': html_code
}
# ログイン画像認識があるかどうかチェックする
#captcha_image_field = browser.find_by_css('img.FnCaptchaImg')
#メールアドレスまたパスワードをチェックする
login_alert_field = browser.find_by_css('p.mdMN02Txt')
if browser.is_element_present_by_css('p.mdMN02Txt'):
result = login_alert_field.value
if result.find(unicode('The password you have entered is invalid, or you have not registered your email address with LINE.')) != -1:
html_code = browser.html
return {
'code': 2,
'message': 'メールアドレスまたはパスワードが正しくありません。',
'htmlcode': html_code
}
# チャージ画面に移動する
browser.find_by_text('Charge').click()
browser.windows.current = browser.windows[1]
browser.find_by_id('70002').click()
browser.execute_script("charge(this); return false;")
# チャージする
code_input_field = browser.find_by_id('FnSerialNumber')
code_input_field.fill(code)
time.sleep(9000)
browser.execute_script("javascript:doCharge(this);return false;")
result = browser.find_by_css('p.mdLYR11Txt01').value
browser.quit()
return result
示例12: fetchVideo
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def fetchVideo(arrLessonTitle, arrLessonURL):
firstBrowser = 'phantomjs'
secondBrowser = 'chrome'
try:
browser = Browser(firstBrowser)
except:
print "\nYou have not properly installed or configured PhantomJS!\nYou will see an automated browser popping up and crawling,\nwhich you will not see if you have properly installed or configured PhantomJS.\nDo not close that automated browser...\n"
try:
browser = Browser(secondBrowser)
print "Using Chrome Web Driver...\n"
except:
browser = Browser()
print "Using Firefox Web Driver...\n"
# if firstBrowser == 'chrome':
# if disableImage == True:
# browser.driver.close()
# options = webdriver.ChromeOptions()
# options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"])
# options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images":2})
# browser.driver = webdriver.Chrome(chrome_options=options)
browser.driver.maximize_window()
browser.visit('https://www.coursera.org/?authMode=login')
time.sleep(5)
browser.fill('email', email)
time.sleep(.5)
browser.fill('password', password)
print "Logging (back) in...\n"
button = browser.find_by_text('Log In')[-1]
button.click()
print "Login success...\n\nWelcome to Coursera\n"
for i in range(0, len(arrLessonURL)):
browser.visit(arrLessonURL[i])
strLessonTitle = arrLessonTitle[i][9:].replace("Reading: ","")
if not precheck(strLessonTitle, fullCourseName):
waiting_time = 0
while(strLessonTitle not in browser.html):
waiting_time = waiting_time + 1
sys.stdout.write('waiting for "' + strLessonTitle[:48] + '" to appear...' + str(waiting_time) + ' second(s)\r')
sys.stdout.flush()
time.sleep(1)
if waiting_time == 60:
print('Time out. Skipped.')
break
try:
selector = '#rendered-content > div > div.rc-OndemandApp > div.rc-ItemLayout > div:nth-child(3) > div > div > div > div.horizontal-box.week-drawer-container > div.content-container.flex-1 > div.extras.horizontal-box.align-items-top.wrap > div.rc-LectureResources.styleguide > ul > li'
courses = browser.find_by_css(selector)
for course in courses:
strLessonURL = course.find_by_css('a')['href']
print strLessonURL, "\n"
fileName = cleanTitle(arrLessonTitle[i])
print fileName, "\n"
try:
while(getFile(strLessonURL, fileName, fullCourseName)):
break
except:
print "download failed...\n"
except:
print "No video found.\n"
pass
else:
pass
browser.driver.close()
示例13: getLessons
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def getLessons(email, password, fullCourseName):
#--------------------------------
# getLessons(email, password, fullCourseName)
#
firstBrowser = 'phantomjs'
secondBrowser = 'chrome'
try:
browser = Browser(firstBrowser)
except:
print "\nYou have not properly installed or configured PhantomJS!\nYou will see an automated browser popping up and crawling,\nwhich you will not see if you have properly installed or configured PhantomJS.\nDo not close that automated browser...\n"
try:
browser = Browser(secondBrowser)
print "Using Chrome Web Driver...\n"
except:
browser = Browser()
print "Using Firefox Web Driver...\n"
arrLessonURL = []
arrLessonTitle = []
browser.driver.maximize_window()
browser.visit('https://www.coursera.org/?authMode=login')
browser.fill('email', email)
browser.fill('password', password)
print "Logging in"
button = browser.find_by_text('Log In')[-1]
button.click()
print "Welcome to Coursera"
while(fullCourseName not in browser.html):
sys.stdout.write('waiting for "' + fullCourseName[:48] + '" to appear...\r')
#sys.stdout.flush()
courses = browser.find_by_css('div.cozy.card-rich-interaction.c-dashboard-membership')
sys.stdout.write('\n'+str(len(courses)) + ' lectures available\r\n\n')
i = 0
try:
while(i < len(courses)):
try:
while(fullCourseName not in courses[i].text.encode('utf-8')):
pass
i += 1
courses = browser.find_by_css('div.cozy.card-rich-interaction.c-dashboard-membership')[i].find_by_tag('a')[-1].click()
except: # on StaleElementReferenceException
browser.reload()
while(fullCourseName not in browser.html):
sys.stdout.write('waiting for "' + fullCourseName + '" to appear...\r')
#sys.stdout.flush()
courses = browser.find_by_css('div.cozy.card-rich-interaction.c-dashboard-membership')[i].find_by_tag('a')[-1].click()
except:
pass
welcomepage = browser.url
while(fullCourseName not in browser.html):
sys.stdout.write('waiting for "' + fullCourseName + '" to appear...\r')
sys.stdout.flush()
weeks = browser.find_by_css('div.rc-WeekRow')
sys.stdout.write('\n'+str(len(weeks)) + " weeks lecture\r\n")
#sys.stdout.flush()
for k in range(0, len(weeks)):
url = welcomepage.replace('welcome','week/'+str(k+1))
print "----------------- WEEK " + str(k+1) + "-----------------\n"
browser.visit(url)
time.sleep(5)
selector = '#rendered-content > div > div.rc-OndemandApp > div.rc-HomeLayout > div.rc-HomeLayoutBody.horizontal-box > div.od-contents > main > div.rc-PeriodPage > div.horizontal-box.wrap > div > section > div.rc-LessonList.card-rich-interaction.od-section > div > div'
#.........这里部分代码省略.........
示例14: getCourses
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def getCourses(email, password):
#--------------------------------
# getLessons(email, password, fullCourseName)
#
waiting_time = 0
arrLessonURL = []
arrLessonTitle = []
print "Getting courses list..."
firstBrowser = 'phantomjs'
secondBrowser = 'chrome'
try:
browser = Browser(firstBrowser)
except:
print "\nYou have not properly installed or configured PhantomJS!\nYou will see an automated browser popping up and crawling,\nwhich you will not see if you have properly installed or configured PhantomJS.\nDo not close that automated browser...\n"
try:
input("Press any key to continue...\n")
except:
pass
try:
browser = Browser(secondBrowser)
print "Using Chrome Web Driver...\n"
except:
browser = Browser()
print "Using Firefox Web Driver...\n"
browser.driver.maximize_window()
browser.visit('https://www.coursera.org/?authMode=login')
browser.fill('email', email)
browser.fill('password', password)
button = browser.find_by_text('Log In')[-1]
button.click()
print "Welcome to Coursera!\n"
time.sleep(15)
while ('My Courses' not in browser.html):
waiting_time = waiting_time +1
sys.stdout.write('loading courses page...' + str(waiting_time) + " seconds\r")
time.sleep(1)
selector = 'div.headline-1-text.c-dashboard-course-course-name'
courses = browser.find_by_css(selector)
print "There are " + str(len(courses)) + " courses available\n"
for i in range(0, len(courses)):
print "["+str(i+1)+"] " + courses[i].text.encode('utf-8')
print "\n"
while True:
sys.stdout.write("[ ] Please pick course number!\r")
pick = raw_input("[")[:2]
sys.stdout.write("[ ] second message!\r")
try:
pick = int(pick)
break
except:
continue
fullCourseName = courses[pick-1].text.encode('utf-8')
print "\nYou have chosen: ["+str(pick)+"] " + fullCourseName + "\n"
return fullCourseName
try:
print "\nClosing connection..."
time.sleep(15)
browser.driver.close()
except:
print footerText
示例15: add_album_to_rym
# 需要导入模块: from splinter import Browser [as 别名]
# 或者: from splinter.Browser import find_by_text [as 别名]
def add_album_to_rym(args, config_file):
br = Browser()
br.visit('https://rateyourmusic.com/account/login')
time.sleep(3)
# Login
br.fill('username', credentials.username)
br.fill('password', credentials.password)
br.find_by_id('login_submit').click()
time.sleep(5)
(title, artist, tracklist, release, cover) = config.read_config(config_file)
"""
if args.update_album:
br.visit(args.rym_album)
else:
"""
if args.add_artist:
br.visit('https://rateyourmusic.com/artist_add')
#br.fill('lastname', unicode(artist))
br.fill('lastname', artist)
br.fill('comments', args.url)
br.find_by_id('submitbtn').click()
time.sleep(3)
br.find_by_text(artist).click()
else:
br.visit(args.rym_profile)
time.sleep(3)
br.click_link_by_partial_href('/releases/ac?artist_id=')
# Add data
#br.fill('title', unicode(title))
br.fill('title', title)
br.find_by_id('format58').click()
br.find_by_id('goAdvancedBtn').click()
tracks_div = br.find_by_id('tracks_adv')
tracks_text_area = tracks_div.find_by_id('track_advanced')
#tracks_text_area.fill(unicode(tracklist))
tracks_text_area.fill(tracklist)
br.find_by_id('goSimpleBtn').click()
br.fill('notes', args.url)
(year, month, day) = parse_release_date(release)
release_month_selector = br.find_by_id('month')
release_month_selector.select(month)
release_day_selector = br.find_by_id('day')
release_day_selector.select(day)
release_year_selector = br.find_by_id('year')
release_year_selector.select(year)
br.find_by_id('previewbtn').click()
br.find_by_id('submitbtn').click()
# Add cover art
"""
coverart_img_element = br.find_by_xpath("//img[@class='coverart_img']")
print(coverart_im_element)
sys.exit(0)
"""
br.click_link_by_partial_href('/images/upload?type=l&assoc_id=')
br.attach_file('upload_file', cover)
br.fill('source', args.url)
br.find_by_id('uploadbutton').click()
time.sleep(5)
br.click_link_by_partial_href('javascript:setStatus')
# Vote for genre
br.click_link_by_partial_href('/release/')
time.sleep(3)
br.click_link_by_partial_href('/rgenre/set?')
prigen_text_area = br.find_by_xpath("//input[@id='prigen']")
prigen_text_area.fill('vaporwave')
prigen_vote_button = br.find_by_xpath("//input[@value='+ propose']").first
#.........这里部分代码省略.........