'''标签:keys,selenium,driver,send,element,使用,方法,find From: https://www.cnblogs.com/longwanghzx/p/16595353.html
## **认识selenium**
**下载:pip install selenium**
官方文档:https://selenium-python.readthedocs.io/
### 什么是selenium?
selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。
**selenium可以模拟真实浏览器,自动化测试工具,支持多种浏览器,爬虫中主要用来解决JavaScript渲染问题。**
'''
### 元素定位
from selenium import webdriver
# 指定浏览器
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
# 打开指定窗口
driver.get('https://www.baidu.com/')
# 打开第二个窗口
# driver.execute_script("window.open(https://taobao.com)")
# 切换窗口
# driver.switch_to.window(driver.window_handles[1])
# 获取网页源代码
# print(driver.page_source)
# **find_element_by_id 通过id属性查找**
# 定位网页元素 send_keys输入
# driver.find_element(By.ID,"kw").send_keys('大黑牛')
# **find_element_by_class_name 通过类名查找**
# 通过类名去获取
# driver.find_element(By.CLASS_NAME,"s_ipt").send_keys('小少爷')
# **find_element_by_name 通过name属性查找**
# 通过name去获取
# driver.find_element(By.NAME,"wd").send_keys('蓝蓝')
# **find_element_by_tag_name 通过标签名查找** ---“用的少”
# 通过标签获取 一个网页当中肯定有多个相同的标签,不好定位,不推荐使用
# driver.find_element(By.TAG_NAME,"div")
# **find_element_by_xpath 通过xpath语法来获取**
# 通过xpath定位
# driver.find_element(By.XPATH,'//input[@id="kw"]').send_keys('牛牛')
# **find_element_by_css_selector 通过css查找**
# 通过css语法定位
# driver.find_element(By.CSS_SELECTOR,"#kw").send_keys('Python')
# **find_element_by_partial_link_text 通过部分文本文档查找**
# 通过关键字定位
# driver.find_element(By.PARTIAL_LINK_TEXT,"神十三").click()
# 程序运行自动关闭窗口
# driver.close