Python/selenium: Difference between revisions
Appearance
< Python
No edit summary |
|||
| Line 1: | Line 1: | ||
= install = | |||
== chrome == | |||
* download chromedriver | |||
* unpack | |||
* place in '/usr/local/bin/' | |||
== PhantomJS (headless) == | |||
** download PhantomJS and place bin/exec in /usr/local/bin | |||
** or install with npm | |||
== initialize == | |||
* imports | * imports | ||
<blockquote> | <blockquote> | ||
| Line 29: | Line 40: | ||
Revision as of 19:08, 24 November 2017
install
chrome
- download chromedriver
- unpack
- place in '/usr/local/bin/'
PhantomJS (headless)
- download PhantomJS and place bin/exec in /usr/local/bin
- or install with npm
initialize
- imports
import selenium from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support.ui import Select from selenium.webdriver.chrome.options import Options from selenium.common.exceptions import TimeoutException
- initialize
def openbrowser():
global browser
chrome_options = Options()
chrome_options.add_argument("--force-renderer-accessibility")
browser = selenium.webdriver.PhantomJS()
#browser = selenium.webdriver.Chrome('/usr/local/bin/chromedriver', chrome_options=chrome_options) # linux
browser.set_window_position(1280, 0)
browser.set_window_size(1280, 1400)
finding element
browser.find_element(By.ID, "login-signin").click() find_element_by_id find_element_by_name find_element_by_xpath find_element_by_link_text find_element_by_partial_link_text find_element_by_tag_name find_element_by_class_name find_element_by_css_selector find_elements_by_name find_elements_by_xpath find_elements_by_link_text find_elements_by_partial_link_text find_elements_by_tag_name find_elements_by_class_name find_elements_by_css_selector
element operations
.click()
.send_keys('hello')
.selected?
.click
.clear
.displayed?
.text
.attribute('class')
.get_attribute('innerHTML')