±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚcsdn£¬±¾ÎÄÖ÷Òª½éÉÜÁËÔÚselenium¹¤¾ß»ù±¾¿ò¼ÜÒÔ¼°¶ÔËüµÄ²Ù×÷²½Öè½øÐÐÁËÏêϸ˵Ã÷¡£ |
|
selenium ÊÇÒ»¸öÓÃÓÚWebÓ¦ÓóÌÐò²âÊԵŤ¾ß¡£Selenium²âÊÔÖ±½ÓÔËÐÐÔÚä¯ÀÀÆ÷ÖУ¬¾ÍÏñÕæÕýµÄÓû§ÔÚ²Ù×÷Ò»Ñù¡£Ö§³ÖµÄä¯ÀÀÆ÷°üÀ¨IE£¨7,
8, 9, 10, 11£©£¬Mozilla Firefox£¬Safari£¬Google Chrome£¬OperaµÈ¡£Õâ¸ö¹¤¾ßµÄÖ÷Òª¹¦ÄܰüÀ¨£º²âÊÔÓëä¯ÀÀÆ÷µÄ¼æÈÝÐÔ¡ª¡ª²âÊÔÄãµÄÓ¦ÓóÌÐò¿´ÊÇ·ñÄܹ»ºÜºÃµÃ¹¤×÷ÔÚ²»Í¬ä¯ÀÀÆ÷ºÍ²Ù×÷ϵͳ֮ÉÏ¡£²âÊÔϵͳ¹¦ÄÜ¡ª¡ª´´½¨»Ø¹é²âÊÔ¼ìÑéÈí¼þ¹¦ÄܺÍÓû§ÐèÇó¡£Ö§³Ö×Ô¶¯Â¼Öƶ¯×÷ºÍ×Ô¶¯Éú³É
.Net¡¢Java¡¢PerlµÈ²»Í¬ÓïÑԵIJâÊԽű¾¡£
seleniumÓÃÓÚÅÀ³æ£¬Ö÷ÒªÊÇÓÃÀ´½â¾öjavascriptäÖȾµÄÎÊÌâ
»ù±¾¿ò¼Ü
¿ØÖÆchromeä¯ÀÀÆ÷£¬·ÃÎʰٶȣ¬²¢ËÑË÷¹Ø¼ü´ÊPython£¬»ñÈ¡ËÑË÷½á¹û
# -*- coding:
utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions
as EC
from selenium.webdriver.support.wait import WebDriverWait
import time
browser=webdriver.Chrome()
try:
browser.get("https://www.baidu.com")
input=browser.find_element_by_id("kw")
input.send_keys("Python")
input.send_keys(Keys.ENTER)
wait=WebDriverWait(browser,10)
wait.until(EC.presence_of_element_located ((By.ID,"content_left")))
print(browser.current_url)
print(browser.get_cookies())
print(browser.page_source)
time.sleep(10)
finally:
browser.close() |
ÔËÐнá¹ûÈçÏ£º


ÏêϸÓ÷¨ÈçÏ£º
1£ºÉùÃ÷ä¯ÀÀÆ÷¶ÔÏó
# -*- coding:
utf-8 -*-
from selenium import webdriver
#ÉùÃ÷¹È¸è¡¢Firefox¡¢SafariµÈä¯ÀÀÆ÷
browser=webdriver.Chrome()
browser=webdriver.Firefox()
browser=webdriver.Safari()
browser=webdriver.Edge()
browser=webdriver.PhantomJS() |
2£º·ÃÎÊÒ³Ãæ
#_*_coding:
utf-8_*_
from selenium import webdriver
browser=webdriver.Chrome()
browser.get("http://www.taobao.com")
print(browser.page_source)
browser.close() |
3£º²éÕÒµ¥¸öÔªËØ
#_*_coding:
utf-8_*_
from selenium import webdriver
from selenium.webdriver.common.by import By
browser=webdriver.Chrome()
browser.get("http://www.taobao.com")
input_first=browser.find_element_by_id("q")
input_second=browser.find_element_by_css_selector("#q")
input_third=browser.find_element(By.ID,"q")
print(input_first,input_second,input_first)
browser.close() |
4£º²éÕÒ¶à¸öÔªËØ
#_*_coding:
utf-8_*_
from selenium import webdriver
from selenium.webdriver.common.by import By
browser=webdriver.Chrome()
browser.get("http://www.taobao.com")
lis=browser.find_element_by_css_selector("li")
lis_c=browser.find_element(By.CSS_SELECTOR,"li")
print(lis,lis_c)
browser.close() |
5£ºÔªËصĽ»»¥²Ù×÷
¶Ô»ñÈ¡µ½µÄÔªËØµ÷Óý»»¥·½·¨
#_*_coding:
utf-8_*_
from selenium import webdriver
import time
browser=webdriver.Chrome()
browser.get("https://www.taobao.com")
input=browser.find_element_by_id("q")
input.send_keys("iPhone")
time.sleep(10)
input.clear()
input.send_keys("iPad")
button=browser.find_element_by_class_name("btn-search")
button.click()
time.sleep(10)
browser.close() |
6£º½»»¥¶¯×÷
°Ñ¶¯×÷¸½¼Óµ½½»»¥Á´ÖÐ
#_*_coding:
utf-8_*_
from selenium import webdriver
from selenium.webdriver import ActionChains
import time
from selenium.webdriver.common.alert import Alert
browser=webdriver.Chrome()
url="http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable"
browser.get(url)
#Çл»µ½Ä¿±êÔªËØËùÔÚµÄframe
browser.switch_to.frame("iframeResult")
#È·¶¨ÍÏ×§Ä¿±êµÄÆðµã
source=browser.find_element_by_id("draggable")
#È·¶¨ÍÏ×§Ä¿±êµÄÖÕµã
target=browser.find_element_by_id("droppable")
#Ðγɶ¯×÷Á´
actions=ActionChains(browser)
actions.drag_and_drop(source,target)
#Ö´ÐÐ
actions.perform()
'''
1.ÏÈÓÃswitch_to_alert()·½·¨Çл»µ½alertµ¯³ö¿òÉÏ
2.¿ÉÒÔÓÃtext·½·¨»ñÈ¡µ¯³öµÄÎı¾ ÐÅÏ¢
3.accept()µã»÷È·Èϰ´Å¥
4.dismiss()Ï൱ÓÚµãÓÒÉϽÇx£¬È¡Ïûµ¯³ö¿ò
'''
t=browser.switch_to_alert()
print(t.text)
t.accept()
time.sleep(10)
browser.close() |
7£ºÖ´ÐÐjavascript
ÏÂÃæµÄÀý×ÓÊÇÖ´ÐоÍÊÇ£¬ÍÏ×§½ø¶ÈÌõµ½µ×£¬²¢µ¯³öÌáʾ¿ò
#_*_coding:
utf-8_*_
from selenium import webdriver
browser=webdriver.Chrome()
browser.get("https://www.zhihu.com/explore")
browser.execute_script("window.scrollTo (0,document.body.scrollHeight)")
browser.execute_script("alert('To Button')")
browser.close() |
8:»ñÈ¡ÔªËØÐÅÏ¢
»ñÈ¡ÊôÐÔ
# -*- coding:
utf-8 -*-
from selenium import webdriver
browser=webdriver.Chrome()
url="https://www.zhihu.com/explore"
browser.get(url)
logo=browser.find_element_by_id("zh-top-link-logo")
print(logo)
print(logo.get_attribute("class"))
browser.close() |
»ñÈ¡Îı¾Öµ
# -*- coding:
utf-8 -*-
from selenium import webdriver
browser=webdriver.Chrome()
url="https://www.zhihu.com/explore"
browser.get(url)
logo=browser.find_element_by_id("zh-top-link-logo")
print(logo)
print(logo.text)
browser.close() |
»ñÈ¡ID¡¢Î»ÖᢴóСºÍ±êÇ©Ãû
# -*- coding:
utf-8 -*-
from selenium import webdriver
browser=webdriver.Chrome()
url="https://www.zhihu.com/explore"
browser.get(url)
logo=browser.find_element_by_id("zh-top-link-logo")
print(logo)
#id
print(logo.id)
#λÖÃ
print(logo.location)
#±êÇ©Ãû
print(logo.tag_name)
#´óС
print(logo.size)
browser.close() |
9£ºµÈ´ý
ÒþʽµÈ´ý
µ±Ê¹ÓÃÁËÒþʽµÈ´ýÖ´ÐвâÊÔµÄʱºò£¬Èç¹ûwebdriverûÓÐÔÚDOMÖÐÕÒµ½ÔªËØ£¬½«¼ÌÐøµÈ´ý£¬³¬¹ýÉ趨µÄʱ¼äºóÔòÅ׳öÕÒ²»µ½ÔªËصÄÒì³££¬»»¾ä»°Ëµ£¬µ±²éÕÒÔªËØ»òÔªËØ²¢Ã»ÓÐÁ¢¼´³öÏÖµÄʱºò£¬ÒþʽµÈ´ý½«µÈ´ýÒ»¶Îʱ¼äÔÙ²éÕÒDOM£¬Ä¬ÈÏʱ¼äΪ0.
# -*- coding:
utf-8 -*-
from selenium import webdriver
browser=webdriver.Chrome()
url="https://www.zhihu.com/explore"
browser.get(url)
browser.implicitly_wait(10)
logo=browser.find_element_by_id("zh-top-link-logo")
print(logo)
browser.close() |
ÏÔʾµÈ´ý
# -*- coding:
utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions
as EC
browser=webdriver.Chrome()
url="https://www.taobao.com"
browser.get(url)
wait=WebDriverWait(browser,10)
input=wait.until(EC.presence_of_element_located ((By.ID,"q")))
button=wait.until(EC.element_to_be_clickable ((By.CSS_SELECTOR,".btn-search")))
print(input,button)
browser.close() |
10£ºä¯ÀÀÆ÷µÄǰ½øºÍºóÍË
# -*- coding:
utf-8 -*-
from selenium import webdriver
import time
browser=webdriver.Chrome()
browser.get("https://www.taobao.com")
browser.get("https://www.baidu.com")
browser.get("https://www.python.org")
browser.back()
time.sleep(1)
browser.forward()
browser.close() |
11£ºcookiesµÄ´¦Àí
# -*- coding:
utf-8 -*-
from selenium import webdriver
import time
browser=webdriver.Chrome()
browser.get("https://www.zhihu.com/explore")
print(browser.get_cookies())
browser.add_cookie({"name":"name","domain" :"www.zhihu.com","value":"germey"})
print(browser.get_cookies())
browser.delete_all_cookies()
print(browser.get_cookies())
browser.close() |
12£ºÑ¡Ï¹ÜÀí
# -*- coding:
utf-8 -*-
from selenium import webdriver
import time
browser=webdriver.Chrome()
browser.get("https://www.zhihu.com/explore")
browser.execute_script("window.open()")
print(browser.window_handles)
browser.switch_to_window(browser.window_handles[1])
browser.get("https://www.taobao.com")
time.sleep(1)
browser.switch_to_window(browser.window_handles[0])
browser.get("https://python.org")
browser.close() |
13£ºÒì³£´¦Àí
# -*- coding:
utf-8 -*-
from selenium import webdriver
from selenium.common.exceptions import TimeoutException,NoSuchElementException
browser=webdriver.Chrome()
try:
browser.get("https://www.zhihu.com/explore")
except TimeoutException:
print("Time out")
try:
browser.find_element_by_id("hello")
except NoSuchElementException:
print("No Element")
finally:
browser.close() |
|