示例#1
0
def sequence_memory(driver: Browser):
    driver.implicitly_wait(0.01)

    squares = driver.find_elements(tag='div', css_selector='div.square')

    roundNo = 1
    squaresNotFound = True
    squareOrder = []
    failSquare = squares[0]
    while roundNo <= 38:
        while squaresNotFound:
            for square in squares:
                if square.get_attribute('class') == 'square active':
                    if len(squareOrder) > 0:
                        if square == squareOrder[-1]:
                            break
                    squareOrder.append(square)
                    if len(squareOrder) == roundNo:
                        squaresNotFound = False
                elif roundNo == 1:
                    failSquare = square

            time.sleep(0.05)

        time.sleep(0.5)
        for square in squareOrder:
            square.click()
            time.sleep(0.001)

        roundNo += 1
        squareOrder = []
        squaresNotFound = True
    time.sleep(1 * roundNo)
    failSquare.click()
 def send_joke(self, joke):
   # self.web = Browser(showWindow=True)
   self.web = Browser(showWindow=False)
   self.log_in()
   # self.switch_box()
   message = self.send_message(joke)
   self.send_email(message)
示例#3
0
 def main(self):
     for i in range(0, len(self.email)):
         web = Browser()
         #self.hide()
         web.go_to('https://www.youtube.com/watch?v=QyAR5kCvDhQ')
         #web.type(self.email[i] , into='First')
         #web.type(self.email[i] , into='Last')
         sleep(50)
示例#4
0
文件: bot.py 项目: robertanye/webbot
 def __init__(self):
     with open("config.json") as json_file:
         self.config = json.load(json_file)
         logger.info("email " + self.config['email'])
         logger.info("password  " + self.config['password'])
         logger.info("url  " + self.config['url'])
         logger.info("max price " + str(self.config['max price']))
     self.web = Browser()
示例#5
0
 def __init__(self, accounts: [], song: str, bot_id: int, time_to_play: int, tolerance: int):
     threading.Thread.__init__(self)
     self.player = Browser()
     self.song = song
     self.accounts = accounts
     self.bot_id = bot_id
     self.time_to_play = time_to_play
     self.tolerance = tolerance
     self.daemon = True
示例#6
0
文件: client.py 项目: nekeal/tritest
 def __init__(self,
              session_cookie,
              world,
              word_settings: WorldSettings = None):
     self.driver = Browser()
     self.world = world
     self._session_cookie = session_cookie
     self.barbarians = []
     self.available_troops = {key.value: 0 for key in Troops}
示例#7
0
def openUrl(url):
	try:
		
		web = Browser()
		web.go_to(url)
		return web

	except:
		return "Not valid website" 
示例#8
0
 def __init__(self, tid, config_filename, headless=False):
     threading.Thread.__init__(self)
     self.tid = tid
     self.start_time = time()
     self.log = Logger(tid).log
     self.web = Browser(showWindow=headless)
     with open(config_filename) as task_file:
         self.T = load(task_file)
     with open('config.json') as config_file:
         self.C = load(config_file)
示例#9
0
    def validate_elements(val_brutebot):

        global val2_output

        tmp_driver = Browser(showWindow=False, proxy=brutebot.proxy)
        tmp_driver.go_to(val_brutebot.target)
        time.sleep(val_brutebot.time_in_seconds)

        x = tmp_driver.exists(val_brutebot.uid, css_selector=str('input[type=text][id="{}"]').format(brutebot.uid))
        y = tmp_driver.exists(val_brutebot.pid, css_selector=str('input[type=password][id="{}"]').format(brutebot.pid))
        z = tmp_driver.exists(val_brutebot.button_name,
                              css_selector=str('button[type=submit][value="{}"]'
                                               or 'input[type=submit][value="{}"]').format(brutebot.button_name))

        if x and y and z:
            time.sleep(val_brutebot.time_in_seconds)
            tmp_driver.close_current_tab()
            val2_output = True
            print_green(f"[!] The specified URL and the login page elements seem OK.\n")
            sys.exit()
        else:
            print_red(
                '[!] Error: The specified URL / login page elements could not be found. Please check & try again.\n\n'
                '[!] Exiting program!\n')
            val2_output = False
            sys.exit()
示例#10
0
 def __init__(self):
     config = configparser.ConfigParser()
     config.read("../configs/credentials.conf")
     #setup login and site information
     self.username = config['creds']['username']
     self.pw = config['creds']['pw']
     self.site = retailers['wm_home']
     self.ps5 = consoles['ps5']
     self.ps5_digital = consoles['ps5_digital']
     self.xbox = consoles['xbox']
     self.web = Browser()
示例#11
0
    def __init__(self, tid, config_filename, headless=False):
        threading.Thread.__init__(self)
        self.tid = tid
        self.start_time = time()
        self.log = Logger(tid).log
        self.web = Browser(showWindow=not headless, incognito=True)
        self.gold_link = 'https://catalog.usmint.gov/basketball-hall-of-fame-2020-uncirculated-silver-dollar-20CD.html?cgid=silver-dollars#start=1'
        self.silver_link = ''

        with open(config_filename) as task_file:
            self.T = load(task_file)
示例#12
0
文件: wht.py 项目: frytry/Dart2
 def main(self):
     web = Browser()
     web.go_to("http://web.whatsapp.com/send?phone=918486372923")
     time.sleep(10)
     for i in range(0, len(self.email)):
         #self.hide()
         web.go_to("http://web.whatsapp.com/send?phone=91" + self.email[i])
         time.sleep(5)
         web.type('https://www.youtube.com/watch?v=AWdexg484ls')
         time.sleep(2)
         web.click(classname='_3M-N-')
         time.sleep(4)
示例#13
0
def typing(driver: Browser):
    driver.implicitly_wait(0)

    symbols = driver.find_elements(tag='span',
                                   classname='incomplete',
                                   loose_match=False)
    input = driver.find_elements(css_selector='div.letters.notranslate')[0]

    passage = ""
    for s in symbols:
        passage += s.get_attribute('innerHTML')

    input.send_keys(passage)
示例#14
0
def scanFacebookPage(url):
    if 'facebook.com' in url:
        web = Browser()
        web.go_to(url)
        try:
            pagina = web.find_elements(id='content')

            for elem in pagina[0].find_elements_by_tag_name('a'):
                if elem.get_attribute('href'):
                    getEvent(elem.get_attribute('href'))

        except:
            print(url,"Nu am putut colecta toate datele")
示例#15
0
def chimp_test(driver: Browser):
    driver.implicitly_wait(0.00001)

    roundNo = 4
    squareOrder = []
    while roundNo <= 40:
        for i in range(1, roundNo + 1):
            squareOrder.append(
                driver.find_elements(text=str(i), tag='div', number=1))

        for i, square in enumerate(squareOrder):
            square[0].find_element_by_xpath('./..').click()

        roundNo += 1
        squareOrder = []
        driver.click('Continue')
示例#16
0
def visual_memory(driver: Browser):
    round = 3
    time.sleep(.75)
    container = driver.find_elements(css_selector='div.css-hvbk5q.eut2yre0')[0]
    while round <= 52:
        squares = container.find_elements_by_xpath('.//*//*')
        activeSquares = []
        for square in squares:
            if 'active' in square.get_attribute('class'):
                activeSquares.append(square)
        time.sleep(1)
        for square in activeSquares:
            square.click()
        round += 1
        time.sleep(1.8)

    #Fail out on purpose
    for i in range(3):
        squares = container.find_elements_by_xpath('.//*//*')
        activeSquares = []
        for square in squares:
            if 'active' not in square.get_attribute('class'):
                activeSquares.append(square)
        time.sleep(1)
        for square in activeSquares[:3]:
            square.click()
        time.sleep(1.8)
示例#17
0
def login(wait_time):
    #start new browser
    web = Browser()
    # options = web.driver.ChromeOptions()
    # options.add_argument('--ignore-certificate-errors')
    # options.add_argument('--ignore-ssl-errors')
    # web = web.driver.Chrome(chrome_options=options)
    #options = web.driver.ChromeOptions('--ignore-certificate-errors', '--ignore-ssl-errors')
    #go to hangouts
    web.driver.get(
        'https://accounts.google.com/signin/v2/identifier?service=talk&passive=1209600&continue=https%3A%2F%2Fhangouts.google.com%2Fwebchat%2Fstart&followup=https%3A%2F%2Fhangouts.google.com%2Fwebchat%2Fstart&flowName=GlifWebSignIn&flowEntry=ServiceLogin'
    )
    time.sleep(wait_time * 2)
    #sign in email
    web.driver.find_element_by_css_selector("input[type='email']").send_keys(
        'VirtualVisitas4.0')
    web.driver.find_element_by_css_selector("input[type='email']").send_keys(
        Keys.RETURN)
    time.sleep(wait_time * 2)

    #password enter
    web.driver.find_element_by_css_selector(
        "input[type='password']").send_keys('MyDeetYeet')
    web.driver.find_element_by_css_selector(
        "input[type='password']").send_keys(Keys.RETURN)
    return web
示例#18
0
def main(user_url: str) -> None:
    url, params = extract_params(user_url)
    cur_page_num = get_current_page(params)
    last_page_num = get_last_page(user_url, cur_page_num)
    params = params.replace(f'p={cur_page_num}', '')
    # new_url is url without p=123 parmeter
    new_url = f'{url}?{params}'

    filename = url_to_filename(new_url, substitute='-', ext='.csv', _os='win')
    DATA_FILENAME = 'data_' + filename
    URLS_FILENAME = 'urls_' + filename
    new_global('DATA_FILENAME', DATA_FILENAME)
    new_global('URLS_FILENAME', URLS_FILENAME)

    bot = None
    if USE_BOT:
        # start browser
        bot = Browser(headless=HEADLESS,
                      proxy=get_global('PROXY'),
                      driverpath=WEBDRIVERPATH)
    new_global('BOT', bot)

    item_urls = []
    if urls_data := load_data(URLS_FILENAME):
        item_urls: List[str] = urls_data.split('\n')
示例#19
0
def reaction_time(driver: Browser):
    clickArea = driver.find_elements(
        tag='div', css_selector='div.e18o0sx0.css-saet2v.e19owgy77')[0]

    round = 1
    while round <= 5:
        if 'view-go' in clickArea.get_attribute('class'):
            clickArea.click()
            round += 1
            clickArea.click()
            time.sleep(0.2)
示例#20
0
def execute_all_threads(brutebot):
    global passwords
    thread_list = []

    if brutebot.mode == 'visible':
        print_yellow("[!] Do not be alarmed if you see a few browser windows open up. DO NOT CLOSE any of them!\n")
        time.sleep(1.5)

    try:

        for i in range(5):
            divided_list = passwords[i::5]
            if len(divided_list) > 0:
                if brutebot.mode == 'visible':
                    new_driver = Browser(showWindow=True, proxy=brutebot.proxy)
                else:
                    new_driver = Browser(showWindow=False, proxy=brutebot.proxy)

                t = Thread(target=feed_passwords, args=(brutebot, new_driver, divided_list,), daemon=True)
                thread_list.append(t)
                t.start()

        for thread in thread_list:
            thread.join()

    except common.exceptions.NoSuchWindowException or common.exceptions.WebDriverException:
        pass

    if (not cracked) and (attempt_count <= len(passwords)):
        print_red('\n[!] Error: Program did not execute properly. Results inconclusive.\n\n[!] Exiting program!\n')
        sys.exit()

    elif (not cracked) and (attempt_count > len(passwords)):
        print_red(
            '\n[!] All passwords exhausted. None of them worked. Sorry!\n\n[!] It could also be that your account '
            'was already locked out after the initial few failed login attempts.\n\n[!] Exiting program!\n')
        sys.exit()
示例#21
0
def getEvent(url):

    if 'facebook.com/events/' in url:
        web = Browser()
        web.go_to(url)
        try:
            newEvent = Event()
            pagina = web.find_elements(id='content_container')

            eventHead= pagina[0].find_element_by_id('event_header')
            primary= eventHead.find_element_by_id('event_header_primary')
            link= primary.find_element_by_tag_name('img').get_attribute('src')
            titlu= primary.find_element_by_id('seo_h1_tag').text
            newEvent.title=titlu

            newEvent.tags= tags_controller.get_Tags(newEvent.title)

            newEvent.image_link=link

            sumar= eventHead.find_element_by_id('event_summary')
            data= sumar.find_element_by_id('event_time_info')

            for x in data.find_elements_by_css_selector("*"):
               if x.get_attribute('content'):
                    y = x.get_attribute('content').split('to')
                    newEvent.date = parser.parse(y[0])

            x= data.find_element_by_xpath("./following-sibling::li")
            location= x.text[x.text.find('\n'):x.text.rfind('\n')]
            newEvent.location=location


            detalii=pagina[0].find_element_by_id('reaction_units')
            for elem in detalii.find_elements_by_css_selector("*"):
                if elem.get_attribute('data-testid') == 'event-permalink-details':
                    newEvent.description = elem.text
                    newEvent.tags+= tags_controller.get_Tags(newEvent.description)

            if detalii.find_element_by_tag_name('ul'):
                newEvent.tags += tags_controller.get_Tags(detalii.find_element_by_tag_name('ul').text)

            newEvent.put()

            web.close_current_tab()

        except :
            print("Nu am putut colecta toate datele")
    else:
        print('Bad url')
示例#22
0
def login(waitTime1):
    #start new browser
    web = Browser()
    #go to hangouts
    web.driver.get(
        'https://accounts.google.com/signin/v2/identifier?service=talk&passive=1209600&continue=https%3A%2F%2Fhangouts.google.com%2Fwebchat%2Fstart&followup=https%3A%2F%2Fhangouts.google.com%2Fwebchat%2Fstart&flowName=GlifWebSignIn&flowEntry=ServiceLogin'
    )
    time.sleep(waitTime1)
    #sign in email
    web.driver.find_element_by_css_selector("input[type='email']").send_keys(
        'VirtualVisitas2.0')
    web.driver.find_element_by_css_selector("input[type='email']").send_keys(
        Keys.RETURN)
    time.sleep(waitTime1)
    web.driver.find_element_by_css_selector(
        "input[type='password']").send_keys('Apaar&AlbertSal')
    web.driver.find_element_by_css_selector(
        "input[type='password']").send_keys(Keys.RETURN)
    return web
示例#23
0
def change_proxy():
    # proxies must be formatted: 182.52.238.111:30098,103.105.77.22:8181,
    # bad proxies will be updated and skipped next time
    proxies: deque = get_global('PROXIES')
    bad_proxies: str = load_data('bad_proxies.txt')
    while proxies:
        proxy: str = proxies.popleft()
        if proxy in bad_proxies:
            continue
        #log(f'checking proxy {proxy}')
        try:
            old_proxy: str = get_global('PROXY')
            save_data('bad_proxies.txt', old_proxy, end=',')
            set_global('PROXY', proxy)
            set_global('PROXY_ERROR', False)
            # set_global('SLEEP_TIME', USER_SLEEP_TIME)
            if USE_BOT:
                log('Reloading bot')
                get_global('BOT').close()
                set_global(
                    'BOT',
                    Browser(headless=HEADLESS,
                            proxy=proxy,
                            driverpath=WEBDRIVERPATH))
            return
            #acceptable = check_connection()
            #if acceptable:
            #    log(f'using proxy {proxy}')
            #    set_global('PROXIES', proxies)
            #    return
            #else:
            #    save_data('bad_proxies.txt', proxy, end=',')
            #    set_global('PROXY', old_proxy)
            #    set_global('PROXY_ERROR', True)
        except Exception as e:
            log(e)
            change_proxy()
    raise ProxyError('Все прокси использованы.')
示例#24
0
        def download_file_rj(music_or_video, file_type, regex_file, ch_actions):
            context.bot.send_message(chat_id=chat_id, text="کمی صبر کنید...")
            if res != "inv":
                web = Browser()
                web.go_to(url)
                s = web.get_page_source()
                web.close_current_tab()
                soup = BeautifulSoup(s, 'html.parser')
                # finde mp3 link
                file_name = str(re.findall(fr"{regex_file}", str(soup)))
                file_name = file_name.replace("['", "")
                file_name = file_name.replace("']", "")
                file_url = f"https://host2.rj-mw1.com/{file_type}{file_name}.mp{music_or_video}"
                req = urllib.request.Request(file_url)
                with urllib.request.urlopen(req) as response:
                    the_file_url_page = str(response.read())
                if the_file_url_page != "b'Not found'":
                    wget.download(file_url, f'{file_name}.mp{music_or_video}')
                else:
                    try:
                        os.remove(f"{file_name}.mp{music_or_video}")
                    except:
                        pass
                    file_url = f"https://host1.rj-mw1.com/{file_type}{file_name}.mp{music_or_video}"
                    wget.download(file_url, f'{file_name}.mp{music_or_video}')
                file_caption = str(file_name) #name fixed
                file_caption = file_caption.replace("-"," ")
                if str(file_name) == "[]":
                    context.bot.send_chat_action(chat_id, ChatAction.TYPING)
                    context.bot.send_message(chat_id=chat_id, text="لینک اشتباه است. \n\n لطفا لینک آهنگ یا موزیک ویدیوی مورد نظر را از رادیو جوان بفرستید.")
                else:
                    if ch_actions == "music":
                        context.bot.send_chat_action(chat_id, ChatAction.UPLOAD_AUDIO)
                        context.bot.send_audio(chat_id=chat_id, audio=open(f"./{file_name}.mp{music_or_video}", "rb"), caption=f"{file_caption}")
                    elif ch_actions == "video":
                        context.bot.send_chat_action(chat_id, ChatAction.UPLOAD_VIDEO)
                        context.bot.send_video(chat_id=chat_id, video=open(f"./{file_name}.mp{music_or_video}", "rb"), caption=f"{file_caption}")

                if os.path.exists(f"{file_name}.mp{music_or_video}"):
                    os.remove(f"{file_name}.mp{music_or_video}")
示例#25
0
 def main(self):
     #print("time:", time)
     #file=open('Online.txt','a')
     #file.write('testing')
     #file.close()
     #file=open('Online.txt','a')
     #file.write('testing2'+str(time))
     #file.close()
     web = Browser()
     web.go_to("http://web.whatsapp.com/send?phone=918638372098")
     time.sleep(10)
     for i in range(0, 100):
         for i in range(0, len(self.email)):
             #self.hide()
             web.go_to("http://web.whatsapp.com/send?phone=91" +
                       self.email[i])
             time.sleep(10)
             if web.exists(text='online'):
                 now = datetime.now()
                 ttime = now.strftime("%H:%M:%S")
                 file = open(self.email[i] + '.txt', 'a')
                 file.write('\n online at' + str(ttime))
                 file.close()
     time.sleep(1)
示例#26
0
                            if web.exists('OK') == True:
                                web.click('OK')  #
                                time.sleep(2)  #chargement de la page

                                if web.exists('Send to Transfer List') == True:
                                    web.click('Send to Transfer List')  #

    if web.exists('Home') == True:
        web.click(classname='Home')  #

    print('sleep')
    time.sleep(random.randint(1, 30))  #chargement de la page


web = Browser("--disable-dev-shm-usage")
web.maximize_window()

try:
    login(web)
except:
    print('error loggin')

if web.exists(classname='view-navbar-currency-coins'
              ) == True:  #on recupere les coins
    coins = web.driver.find_element_by_class_name(
        'view-navbar-currency-coins').text
    a_coins = int((coins.replace(',', '')).replace(' ', ''))
    print('on commence avec : ', a_coins)
else:
    a_coins = 1001
from webbot import Browser
from pynput.keyboard import Key, Controller
import time
web = Browser()
keyboard = Controller()
web.go_to('instagram.com')
time.sleep(5)
keyboard.press(Key.f6)
keyboard.release(Key.f6)
time.sleep(3)
keyboard.press(Key.enter)
keyboard.release(Key.enter)
time.sleep(3)
keyboard.press(Key.tab)
keyboard.release(Key.tab)
time.sleep(3)
web.type('')  #username
keyboard.press(Key.tab)
keyboard.release(Key.tab)

word = [
    "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e",
    "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t",
    "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I",
    "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X",
    "Y", "Z"
]
w = ["", "", "", "", "", "", "", ""]
s = ''
for a in word:
    w[0] = a
示例#28
0
def main():
	while True:
		web = Browser(showWindow = pencere_acilsin_mi)
		try:
			m1 = random.randint(20,500)
			m2 = random.randint(-200,700)
			m3 = random.randint(40,900)
			web.set_page_load_timeout(60)
			web.go_to(site)
			if web.exists(kelime):
				sleep(random.randint(20,50))
				print("anasayfa")
				web.scrolly(m1) 
				web.scrolly(m2) 
				web.scrolly(m3)
				try:
					a = []
					a = web.find_elements(tag='a')
					sec = random.choice(a)
					sec.click()
					print(web.get_title())
					acik = web.get_total_tabs()
					if acik>1:
						web.switch_to_tab(2)
					sleep(random.randint(20,50))
					web.scrolly(m1) 
					web.scrolly(m2) 
					web.scrolly(m3)
					try:
						a = []
						a = web.find_elements(tag='a')
						sec = random.choice(a)
						sec.click()
						acik1 = web.get_total_tabs()
						if acik1>1:
							web.switch_to_tab(acik1)
						sleep(random.randint(20,50))
						print(web.get_title())
						web.scrolly(m1) 
						web.scrolly(m2) 
						web.scrolly(m3)
						try:
							a = []
							a = web.find_elements(tag='a')
							sec = random.choice(a)
							sec.click()
							acik2 = web.get_total_tabs()
							if acik2>1:
								web.switch_to_tab(acik2)
							sleep(random.randint(20,50))
							print(web.get_title())
							web.scrolly(m1) 
							web.scrolly(m2) 
							web.scrolly(m3)
							try:
								a = []
								a = web.find_elements(tag='a')
								sec = random.choice(a)
								sec.click()
								acik3 = web.get_total_tabs()
								if acik3>1:
									web.switch_to_tab(acik3)
								sleep(random.randint(20,50))
								print(web.get_title())
								web.scrolly(m1) 
								web.scrolly(m2) 
								web.scrolly(m3)
								try:
									a = []
									a = web.find_elements(tag='a')
									sec = random.choice(a)
									sec.click()
									acik4 = web.get_total_tabs()
									if acik4>1:
										web.switch_to_tab(acik4)
									sleep(random.randint(20,50))
									print(web.get_title())
									web.scrolly(m1) 
									web.scrolly(m2) 
									web.scrolly(m3)
									try:
										a = []
										a = web.find_elements(tag='a')
										sec = random.choice(a)
										sec.click()
										acik5 = web.get_total_tabs()
										if acik5>1:
											web.switch_to_tab(acik5)
										sleep(random.randint(20,50))
										print(web.get_title())
										web.scrolly(m1) 
										web.scrolly(m2) 
										web.scrolly(m3)
										try:
											a = []
											a = web.find_elements(tag='a')
											sec = random.choice(a)
											sec.click()
											acik6 = web.get_total_tabs()
											if acik6>1:
												web.switch_to_tab(acik6)
											sleep(random.randint(20,50))
											print(web.get_title())
											web.scrolly(m1) 
											web.scrolly(m2) 
											web.scrolly(m3)
											try:
												a = []
												a = web.find_elements(tag='a')
												sec = random.choice(a)
												sec.click()
												acik7 = web.get_total_tabs()
												if acik7>1:
													web.switch_to_tab(acik7)
												sleep(random.randint(20,50))
												print(web.get_title())
												web.scrolly(m1) 
												web.scrolly(m2) 
												web.scrolly(m3)
												web.quit()
											except:
												web.quit()
										except:
											web.quit()
									except:
										web.quit()
								except:
									web.quit()
							except:
								web.quit()
						except:
							web.quit()
					except:
						web.quit()	
				except:
					web.quit()	
			else:
				web.quit()
		except:
			web.quit()
from webbot import Browser
web = Browser()
web.go_to('https://www.way2sms.com/')
web.type('9999999999', id='mobileNo')  #Enter your phone number
web.type('YourPassword', id='password')  #Enter your Way2Sms Password
web.press(web.Key.ENTER)
web.type('9999999999', id='mobile')  #Sender phone number
web.type('Text to send', id='message')  #Sender Text
web.click(tag='button', id='sendButton')
示例#30
0
    # then click a check mark

generatedGroups = createGroups(allEmailsNoDuplicates, desired)



print(generatedGroups)

notWorked = True
#WaitTime is used with time.sleep() to make sure webpages are loading. Especially for pyautogui
waitTime1 = 1
groupNum = 1
today = date.today()
dateNow = today.strftime("%B %d, %Y")
groupName = dateNow + " Call " + str(groupNum) + " Key: "
web = Browser()
web.go_to('google.com')
web.maximize_window()
#for some reason going directly to hangouts.google.com doesn't work
web.type('google hangouts online' + '\n')
web.click('hangouts.google.com')
web.click('Sign in')
web.type('VirtualVisitas2.0' , into='Email')
web.click('NEXT' , tag='span')
#For some reason this needs to be put twice to work
time.sleep(waitTime1)
web.type('Apaar&AlbertSal' , into='Password' , id='passwordFieldId')
web.type('Apaar&AlbertSal' , into='Password' , id='passwordFieldId')
web.click('NEXT' , tag='span') # you are logged in . woohoooo
web.click('confirm')