当前位置: 首页 > news >正文

vue做网站的好处建立网站的准备工作

vue做网站的好处,建立网站的准备工作,建设公司的网站制作,云南省城乡与住房建设厅网站1、什么是selenium? Selenium是一个用于Web应用程序测试的工具。Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器…

1、什么是selenium?

  • Selenium是一个用于Web应用程序测试的工具。
  • Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。
  • 支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器完成测试。
  • selenium也是支持无界面浏览器操作的。

2、为什么使用selenium?

模拟浏览器功能,自动执行网页中的js代码,实现动态加载

3、如何安装selenium?

需要下载驱动,咱们以谷歌浏览器为例下载谷歌驱动

①、操作谷歌浏览器驱动下载地址

http://chromedriver.storage.googleapis.com/index.html

注意:驱动的版本需要和谷歌浏览器版本一致

查看谷歌浏览器版本:在谷歌浏览器中输入 ”chrome://version/“

②、安装

pip install selenium

4、驱动的使用方式

4.1、PATH 环境变量

将下载后的驱动放到环境变量中,在命令行输入  ”chromedriver“ 如果出现一下界面说明安装成功

安装成功后代码中无需指定驱动位置:

from selenium import webdriverdriver = webdriver.Chromeurl = "https://www.baidu.com"driver.get(url)

4.2、在编写代码时指定驱动位置

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 指定驱动位置
service = Service(executable_path="/path/to/chromedriver")
driver = webdriver.Chrome(service=service)

 

5、Python操作selenium实例

实例环境

os:Mac

谷歌版本:111.0.5563.110

驱动版本:111.0.5563.64

selenium:4.8.3

5.1、基础

代码:注意执行完会一闪而过,是因为我们后续没有代码,自动测试结束

# 导入包
from selenium import webdriver# 创建谷歌浏览器驱动
driver = webdriver.Chrome()# 定义要浏览的网页url
url = "https://www.baidu.com"# 在浏览器中执行操作
driver.get(url)# 导入time 包 让线程睡眠4秒,可以更好的看到效果
import time 
time.sleep(4)

 

5.2、获取浏览器相关信息


# 打开网站
driver.get(url)# 获取当前浏览器标题
title = driver.titleprint(title)# 获取当前浏览的url
cur_url = driver.current_urlprint(cur_url)# 后退:按下浏览器的后退按钮
driver.back()# 前进:按下浏览器的前进键
driver.forward()# 刷新:刷新当前页面
driver.refresh()

5.3、查找元素

先看下百度首页输入框和百度一下按钮的ID

 知道了这两个输入框的ID后,我们的需求为:自动在输入框中输入”ChatGPT“,并且自动点击百度一下进行搜索,代码如下:

# 导入包
from selenium import webdriver
from selenium.webdriver.common.by import By
import time# 创建谷歌浏览器驱动
driver = webdriver.Chrome()# 定义要浏览的网页url
url = "https://www.baidu.com"# 打开网站
driver.get(url)# 获取输入框
kw = driver.find_element(By.ID, "kw")
# 将成龙自动输入到输入框中
kw.send_keys("ChatGPT")# 获取百度一下按钮
su = driver.find_element(By.ID, "su")
# 自动点击百度一下按钮
su.click()# 睡眠4秒看效果
time.sleep(4)

 具体效果大家就拷贝代码自行查看了。

代码中有用到通过ID获取input元素,然后通过send_keys 自动填充输入框,最后通过click自动触发点击事件。

定位元素所有策略如下:注意记得导入包

策略描述
By.ID通过HTML元素ID获取元素
By.NAME通过HTML元素属性name值获取元素
By.TAG_NAME通过HTML元素名称获取元素
By.CLASS_NAME通过元素class属性值获取元素        
By.CSS_SELECTOR通过css选择器获取元素
By.XPATH通过Xpath语法获取元素
By.LINK_TEXT通过连接文本值获取元素
By.PARTIAL_LINK_TEXT通过模糊查询文本值获取元素

我们通过一下代码片段实现以上每种策略实例演示

<ol id="vegetables"><li class="potatoes">…<li class="onions">…<li class="tomatoes"><span>Tomato is a Vegetable</span>…
</ol>
<ul id="fruits"><li class="bananas">…<li class="apples">…<li class="tomatoes"><span>Tomato is a Fruit</span>…
</ul>
<input type="text" name="wd"/>
<input type="submit" value="百度一下" id="su" class="btn self-btn bg s_btn">
<a href="https://blog.csdn.net/u011837804">个人中心</p>

代码实例: 

fruits = driver.find_element(By.ID, "fruits")
fruit = fruits.find_element(By.CLASS_NAME,"tomatoes")
fruit = driver.find_element(By.CSS_SELECTOR,"#fruits .tomatoes")
plants = driver.find_elements(By.TAG_NAME, "li")
wd = driver.find_element(By.NAME, "wd")
wd = driver.find_element(By.XPATH, "//input[@name='wd']")
a = driver.find_element(By.LINK_TEXT, "个人中心")
a = driver.find_element(By.PARTIAL_LINK_TEXT, "个人")

5.4、操作元素

直接上代码:


# 获取输入框
kw = driver.find_element(By.ID, "kw")# 填充输入框
kw.send_keys("成龙")# 清除输入框
kw.clear()

5.5、获取元素信息

# 获取元素是否显示 返回 布尔值
is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed()# 获取元素是否启用 返回 布尔值
value = driver.find_element(By.NAME, 'btnK').is_enabled()# 针对checkbox返回是否被选中
value = driver.find_element(By.CSS_SELECTOR, "input[type='checkbox']:first-of-type").is_selected()# 获取元素标签名称
attr = driver.find_element(By.CSS_SELECTOR, "h1").tag_name# 获取元素的位置信息#元素左上角的X轴位置#元素左上角的y轴位置#元素的高度#元素的宽度
res = driver.find_element(By.CSS_SELECTOR, "h1").rect# 获取元素CSS值
cssValue = driver.find_element(By.LINK_TEXT, "More information...").value_of_css_property('color')# 获取文本内容
text = driver.find_element(By.CSS_SELECTOR, "h1").text# 获取元素属性值
email_txt = driver.find_element(By.NAME, "email_input")
value_info = email_txt.get_attribute("value")

http://www.yayakq.cn/news/512454/

相关文章:

  • 电子商务网站设计与管理接推广怎么收费
  • 本地网站搭建软件html5网站模板 免费
  • 怎样做网站服务器如何开发系统
  • 网站开发c厦门专业做网站的公司
  • 重庆巨能建设集团网站网站高中建设工具
  • 英语网站的建设需要网络营销策划是什么意思
  • 教育投资网站建设方案wordpress主题盗取
  • 网站风格确认书wordpress登录后才能下载文件
  • 网站开发的搭建框架是什么意思旅游网站国际业务怎样做
  • 用什么网站推广关键词查网址
  • 南漳网站设计品牌网上旗舰店和商场质量一样吗
  • 柑桔种植服务网站开发phpcms v9怎么做网站
  • h5游戏网站开发正定网站建设
  • 怎么制作网站封面外国人做家具的网站
  • 临沂网站建设吧腾讯网页游戏平台
  • 网站信息登记表扫描件有哪些做海岛的网站
  • wordpress 流程图插件重庆seo搜索引擎优化平台
  • 室内环保网站模板代码怎么制作宣传海报图片
  • 网站的交流的功能怎么做前端开发和后端开发
  • 校园网站建设计划书上海建设银行官网网站6
  • 兑换网站建设wordpress下载 4.8
  • 专门 做鞋子团购的网站厦门建站最新消息
  • 怎么提高网站加载速度慢网站开发相关书籍资料
  • 游戏网站的导航条怎么做的武侯区网站建设
  • 网站被跳转怎么办苏州做网站建设
  • 做网站经营流量html5 电商网站模板
  • 公司网站开发费用济南兴田德润评价wordpress不同分类
  • 织梦通用企业网站模板移动互联网的主要特点
  • 网站设计编程网站开发可演示的版本
  • 做网站运营有提成吗网站优化排名软件哪些 最好