Benutzer-Werkzeuge

Webseiten-Werkzeuge


Übersetzungen dieser Seite:

programming:python:selenium

Python - Selenium

Installation

python3 -m pip install selenium
wget -N https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -P ~/
sudo dpkg -i --force-depends ~/google-chrome-stable_current_amd64.deb

https://sites.google.com/a/chromium.org/chromedriver/downloads

sudo cp ~/Downloads/chromedriver /usr/local/bin/

basics

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("http://google.com")
search_box = driver.find_element_by_name("q")
print(search_box)
 
search_button = driver.find_element_by_name("btnK")
search_button.click()
 
search_box.clear()
search_box.send_keys("test")
 
from selenium.webdriver.common.keys import Keys
search_box.send_keys(Keys.RETURN)

warten auf element

itemliste

results=driver.find_elements(By.CSS_SELECTOR,"dt[class=ui-datalist-item]") #get multiple elements matching the selector
for i in results:
     data=i.find_element_by_css_selector('div[id*=indexSearchResultForm] > span').text #search item below current element

einfache Klasse

class simplebrowser:
    def __init__(self,driver):
        self.driver = driver
        self.wait = WebDriverWait(self.driver, 10)
 
    def search(self,text):
        print("searchstring: ",text)
        resultlist=[]
        try:
            self.driver.get(SB_SEARCH_URL)
            searchbox=self.wait.until(presence_of_element_located((By.CSS_SELECTOR, "input[id*=SearchBox]")))
            searchbox.send_keys(text + Keys.RETURN)
            ...
            resultlist.append(data)
        except Exception as e:
            print("error:",e.message)
        finally:
            return resultlist

Tabs

programming/python/selenium.txt · Zuletzt geändert: 2023/06/08 17:06 von 127.0.0.1