python万字博文教你玩嗨selenium库,建议收藏!
文章目录
首先安装插件
首先要安装webdriver插件,本文以谷歌浏览器为例,点开谷歌浏览器,点击右上角三个点,然后点击帮助,然后点击关于Google Chrome,查看浏览器的版本,然后点击网址http://npm.taobao.org/mirrors/chromedriver寻找自己浏览器对应的版本进行下载,下载之后将chromedriver.exe的文件最好放在你python解释器的同级目录下
基本用法
from selenium import webdriver
driver = webdriver.Chrome(executable_path=r'你的chromedriver.exe的路径')
start_url = 'https://www.baidu.com'
driver.get(start_url)
无界面模式运行,后台运行
第一种无界面模式
from selenium import webdriver
from selenium.webdriver import ChromeOptions
# 创建配置对象
option = ChromeOptions()
# 无界面的设置
option.headless = True
driver = webdriver.Chrome(options=option)
driver.get('https://www.baidu.com')
# 获取网页的源码
html = driver.page_source
print(html)
无界面模式第二种
from selenium import webdriver
from selenium.webdriver import ChromeOptions
# 创建配置对象
option = ChromeOptions()
# 无界面的设置
option.add_argument('--headless')
driver = webdriver.Chrome(options=option)
driver.get('https://www.baidu.com')
# 获取网页的源码
html = driver.page_source
print(html)
第三种无界面模式
from selenium import webdriver
driver = webdriver.PhantomJS(executable_path=r'你的phantomjs.exe路径')
# driver = webdriver.phantomjs(executable_path=r'D:\python3.7\utils\phantomjs.exe')
driver.get('https://www.baidu.com')
# 获取网页的源码
html = driver.page_source
print(html)
标签定位方法
from selenium import webdriver
driver = webdriver.Chrome()
# 窗口最大化
driver.maximize_window()
start_url = 'https://www.baidu.com'
# start_yrl_1 = 'https://www.youkuaiyun.com'
# 访问地址
driver.get(start_url)
根据标签的id属性进行定位
# 根据标签的id属性进行定位
"""根据标签的id属性进行定位,如果浏览器页面展示的是输入,采用send_keys(),如果是按钮点击的,使用click()"""
driver.find_element_by_id('kw').send_keys('美女')
driver.find_element_by_id('su').click()
根据标签的name属性进行定位
driver.find_element_by_name('wd').send_keys('迪丽热巴')
根据标签的class属性进行定位
driver.find_element_by_class_name('s_ipt').send_keys('迪丽热巴')
根据xpath语法定位
driver.find_element_by_xpath('//*[@id="su"]'