WebDriver
WebDriver ã¯ãã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãã®è¦³å¯ã¨å¶å¾¡ãå¯è½ã«ããé éå¶å¾¡ã¤ã³ã¿ã¼ãã§ã¤ã¹ã§ããããã»ã¹ã®å¤ã®ããã°ã©ã ãã¦ã§ããã©ã¦ã¶ã¼ã®åä½ãé éã§æç¤ºããæ¹æ³ã¨ãã¦ããã©ãããã©ã¼ã ã¨è¨èªã«ä¸ç«ãªã¯ã¤ã¤ã¼ãããã³ã«ãæä¾ãã¾ãã
ã¦ã¼ã¶ã¼ã«ä¸è²«ãã使ãåæãæä¾ããã«ã¯ãç°ãªããã©ãããã©ã¼ã ä¸ã®å¤ãã®ãã©ã¦ã¶ã¼ã§ç¸äºã«å®è¡ã§ããå½ä»¤ã»ãããæ¸ããã¨ãã§ãããã¨ãéè¦ã§ããã¦ã§ããã©ãããã©ã¼ã ã§ã®æ°ããéçºã®æ³¢ã端æ«ã®å¤æ§æ§ã®å¢å ããã¯ããã¸ã¼éã®å®éã®ç¸äºéç¨æ§ã®è¦æ±ãèæ¯ã«ã WebDriver ã¯ã¯ãã¹ãã©ã¦ã¶ã¼ãã¹ãã®ããã®ã®ãã¼ã«ãæä¾ãã¾ãã
æä¾ããããã®ã¯ãã¦ã§ãææ¸å ã® DOM è¦ç´ ãæ¤åºãããæä½ããããã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãã®åä½ãå¶å¾¡ãããããããã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ã§ããããã¯ä¸»ã«ãã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ããå¥ãªå¶å¾¡ããã»ã¹ããèªåå¶å¾¡ãããã¹ãããã¦ã§ãä½è ãæ¸ããã¨ãã§ããããã«ãããã¨ãç®çã§ãããå ´åã«ãã£ã¦ã¯ãã©ã¦ã¶ã¼å ã®ã¹ã¯ãªããã â ããããä»ã® â ãã©ã¦ã¶ã¼ãå¶å¾¡ããããã«ä½¿ç¨ãããã¨ãã§ãã¾ãã
ä½¿ãæ¹
ããã§ã¯ã WebDriver ã§ä½ãå®ç¾ã§ããã©ã®ããã«è¦ããã®ã§ããããã WebDriver ã¯ããã°ã©ãã³ã°è¨èªã«ä¸ç«ãªã®ã§ããã®è³ªåã«å¯¾ããçãã¯ã使ç¨ãã¦ãã WebDriver ã¯ã©ã¤ã¢ã³ãã¨è¨èªã®é¸æã«ãã£ã¦ç°ãªãã¾ãã
ãããã Python ã§æ¸ãããæåãªã¯ã©ã¤ã¢ã³ãã使ç¨ããã¨ã WebDriver ã¨ã®å¯¾è©±ã¯æ¬¡ã®ããã«ãªãã§ãããã
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.expected_conditions import presence_of_element_located
with webdriver.Firefox() as driver:
wait = WebDriverWait(driver, 10)
driver.get("http://google.com/ncr")
driver.find_element_by_name("q").send_keys("cheese" + Keys.RETURN)
wait.until(presence_of_element_located((By.CSS_SELECTOR, "h3>a")))
results = driver.find_elements_by_css_selector("h3>a")
for i, result in results.iteritems():
print(f"#{i}: {result.text} ({result.get_property('href')})")
ããã¯æ¬¡ã®ãããªåºåçµæã«ãªãã¾ãã
#1 Cheese - Wikipedia (https://en.wikipedia.org/wiki/Cheese)