selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。
selenium可以模拟真实浏览器,自动化测试工具,支持多种浏览器,爬虫中主要用来解决JavaScript渲染问题。
用python写爬虫的时候,主要用的是selenium的Webdriver,我们可以通过下面的方式先看看Selenium.Webdriver支持哪些浏览器
给出代码:
from selenium import webdriver browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
print(browser.page_source)
browser.close()
访问百度
from selenium import webdriver
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_xpath('//*[@id="q"]')
print(input_first)
print(input_second)
print(input_third)
browser.close()
这里我们通过三种不同的方式去获取响应的元素,第一种是通过id的方式,第二个中是CSS选择器,第三种是xpath选择器,结果都是相同的。
这里 我们尝试登陆163网页:
import time
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("https://mail.163.com")
time.sleep(10)
browser.switch_to.frame(0)
name=browser.find_element_by_name("email")
name.clear()
name.send_keys("l*****1")
p=browser.find_element_by_class_name("pass")
p.clear()
p.send_keys("1****")
browser.find_element_by_id("dologin").click()
time.sleep(2)
browser.switch_to_default_content()