Webdriver Python

From Training Material
Jump to navigation Jump to search
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

---------------------------------------------
from selenium.webdriver.support.ui import Select
select = Select(driver.find_element_by_css_selector('#l'))
print select

select.deselect_all()
select.select_by_visible_text('English')
select.select_by_visible_text('Chinese')
select.deselect_by_visible_text('Chinese')
-----------------------------------------------

for item in links:
  print item.get_attribute('href')
------------------------------------------

for option in scopeList:
  print option.text

----------------------------------------------
imageElement = driver.find_element_by_css_selector("#hplogo img")
help(imageElement)

print imageElement.size
print imageElement.size['height']

-------------------------------
inputElement = driver.find_element_by_css_selector('#gbqfq')
print inputElement.text
print inputElement.get_attribute('value')
inputElement.clear()

-------------------------------------------
firstResult = driver.find_element_by_css_selector('.g a')

unicode:
>>> firstResult.text
u'Alessandro Volta - Wikipedia, the free encyclopedia'
>>> print firstResult.text
Alessandro Volta - Wikipedia, the free encyclopedia

list:

results = driver.find_elements_by_css_selector('.g a')
find_element -> find_elements

for result in results:
    print result.text

-----------------------------------------


In [176]: for query in dictionary2:
   .....:     print query
   .....:
aardvark
selenium

In [177]: for query in dictionary2:
   .....:     print query[1]
   .....:
a
e

In [178]: for query in dictionary2:
   .....:     print dictionary2[query]
   .....:
['aardvark guide to the universe', 'design patterns for aardvarks']
['book1', 'book2', 'book3']

In [179]:

----------------------------------------------------
driver.get('http://www.google.com')

queryElement = driver.find_element_by_css_selector("input[name='q']")
queryElement.send_keys('selenium')
sendButton = driver.find_element_by_css_selector('#gbqfb')
sendButton.click()

firstResult = driver.find_element_by_css_selector('.g a')
print firstResult.text

queryDict = {'selenium': {'result1': 'Web Browser Automation', 'result2': 'Side Effects', 'result3': 'Dietary Supplement'}}

if queryDict['selenium']['result1'] in firstResult.text:
    print 'result matches'


-------------------------------------------------------------------------------------------
driver.get('http://sflib1.sfpl.org/search/?searchtype=X&searcharg=selenium')

queryDict = {
    'selenium':
        [
            'practical guide',
            'design patterns',
            'Instant Selenium',
            'Determination'
        ]
}

queryElement = driver.find_element_by_css_selector('#searcharg')

 for query in queryDict:
    queryElement = driver.find_element_by_css_selector('#searcharg')
    queryElement.clear()
    queryElement.send_keys(query)
    queryElement.submit()

    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '.briefCitRow')))

    results = driver.find_elements_by_xpath("//tr[@class='briefCitRow']//td[3]/table/tbody/tr[1]/td/a")

    for a in range(len(results)):
      if a < len(queryDict[query]):
        self.assertTrue(queryDict[query][a] in results[a].text)

----------------------------------------------------
len(results)
12

range(len(results))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]