selenium浏览器测试
下载selenium
首先在自己的虚拟环境中下载
pip install selenium
下载chrome driver
一、安装Chrome浏览器
1、安装依赖
sudo apt-get install libxss1 libappindicator1 libindicator7
2、下载Chrome安装包
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
3、安装
sudo dpkg -i google-chrome*.deb
sudo apt-get install -f
二、安装ChromeDriver
1、安装xvfb以便我们可以无头奔跑地运行Chrome
sudo apt-get install xvfb
2、安装依赖
sudo apt-get install unzip
3、下载安装包
wget -N http://chromedriver.storage.googleapis.com/2.26/chromedriver_linux64.zip
4、解压缩+添加执行权限
unzip chromedriver_linux64.zip
5、移动
sudo mv -f chromedriver /usr/local/share/chromedriver
6、建立软连接
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedrive
来源于https://www.cnblogs.com/x54256/p/8403864.html
from selenium import webdriver
import time
driver=webdriver.Chrome()
用chrome driver打开百度首页
driver.get('http://www.baidu.com')
使用xpath寻找元素
ret=driver.find_element_by_xpath("//a[@name='tj_trtieba']").text
xpath寻找元素后添加点击事件
# ret=dirver.find_element_by_xpath("//a[@name='tj_trtieba']").click()
通过id查找input元素,添加字段
driver.find_element_by_id("kw").send_keys('豆瓣')
time.sleep(1)
print('##############')
通过id查找元素,添加点击事件
driver.find_element_by_id('su').click()
ret=driver.find_element_by_xpath("//div[@id=1]/h3/a").click()
对于超链接会产生多个标签页的,需要切换到刚生成的标签上
for i in driver.window_handles:
driver.switch_to.window(i)
time.sleep(10)
ret1=driver.find_element_by_xpath('//iframe/@src')
print(ret1)
添加js
js='alert("okay")'
dirver.execute_script(js)
alert=dirver.switch_to_alert()
保存当前driver所在的标签页的截图
driver.save_screenshot('a.png')