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

现在建设的网站有什么劣势温州互联网公司

现在建设的网站有什么劣势,温州互联网公司,俄语网站建站,wordpress ps.w.org1.Frame框架 使用frame框架可以达到一个页面包含多个窗口#xff0c;可以理解为网页的嵌套#xff0c;比如在A网页中设置一块区域用来显示B网页的内容。在不进行处理的前提下不能操作B网页的内容。 1.1切换到iframe元素 driver.switch_to_frame( frame_element ) # frame_e…1.Frame框架 使用frame框架可以达到一个页面包含多个窗口可以理解为网页的嵌套比如在A网页中设置一块区域用来显示B网页的内容。在不进行处理的前提下不能操作B网页的内容。 1.1切换到iframe元素 driver.switch_to_frame( frame_element )  # frame_element是 iframe元素。 当我们执行这条语句后焦点就转换到了对应的 iframe框架内部此时我们就能操作内部的元素了但是不能操作外部的元素。 1.2 切换回主界面 driver.switch_to_default_content() 2.多窗口操作 我们在当前页面中点击一个链接打开另一个页面时焦点不会自动转换到另一个页面此时想操作另一个页面的元素时就会报 NoSuchElementException要避免这个错误需要我们手动切换到新打开的页面。 句柄浏览器窗口的表示符一个窗口对应一个唯一的句柄。 多窗口切换操作步骤 1.获取句柄        handles driver.window_handles() 2.切换句柄        driver.switch_to_window(handles[n]) 句柄在列表中的索引顺序对应打开的顺序handles[0]对应启动界面。 3.截图 使用场景当断言失败后便于我们查看失败页面和失败原因 driver.get_screenshot_as_file(图片存储地址) 4.处理验证码 处理验证码的方式1.取消验证码        2.使用万能验证码        3.图像识别        4.cookie 我们主要使用cookie处理验证码对应操作步骤 1.手动登录一次抓包cookie        2.在脚本中添加cookie        3.刷新页面登录成功 driver webdriver.Chrome() driver.get(https://www.baidu.com) data {name:cookie_key,value:cookie_value} #这里对应的name和value需要提前抓包复制 driver.add_cookie(data) all_cookies driver.get_cookies() #获取所有cookie sleep(1) driver.refresh() #刷新后未登录状态变为已登录状态5.PO模式 PO即 Page Object主要思想是将自动化涉及的页面或模块封装成一个类相较于原始写法提高了复用性和可维护性 5.1 PO层次 5.1.1 Base层 存放所有页面的公共方法如查找元素向文本框输入内容等。 from selenium.webdriver import Keys from selenium.webdriver.support.wait import WebDriverWaitclass Base:def __init__(self, driver):self.driver driverdef base_find_element(self, loc, timeout10, frequency0.5): #loc[0]By.CSS_SELECTOR, loc[1]#idreturn WebDriverWait(self.driver , timeout , frequency).until(lambda x: x.find_element(*loc))def base_input(self, loc , value): #loc [By.ID, id]element self.base_find_element(loc)element.clear() #输入前先清空element.send_keys(value)def base_click(self , loc):self.base_find_element(loc).click()def base_get_text(self,loc):return self.base_find_element(loc).text 5.1.2 Page层 基于页面或模块单独封装当前要操作的对象需要继承自Base层调用基础的输入点击方法 page层中封装当前页面需要进行的操作比如现在为登录界面 那么封装的方法就包括输入用户名输入密码点击登录...from selenium.webdriver.common.by import By from base.base import Base 准备的数据每个数据都是一个元组第一个元素是查找元素的方式第二个是值 在调用Base层的查找元素方法时解包lambda x: x.find_element(*loc)def base_find_element(self, loc, timeout10, frequency0.5):return WebDriverWait(self.driver , timeout , frequency).until(lambda x: x.find_element(*loc)) class PageLogin(Base):__loc_username (By.CSS_SELECTOR, #username)__loc_password (By.CSS_SELECTOR, #password)__loc_btn (By.CSS_SELECTOR, #btnLogin)def __page_login_input_username(self, value):self.base_input(self.__loc_username, value)def __page_login_input_password(self,value):self.base_input(self.__loc_password ,value)def __page_login_click_btn(self):self.base_click(self.__loc_btn)#整体登录业务包括输入用户名密码点击登录def page_login_transaction(self,username,password):self.__page_login_input_username(username)self.__page_login_input_password(password)self.__page_login_click_btn() 5.1.3 Script层 脚本层 unittest或者pytest
http://www.w-s-a.com/news/683221/

相关文章:

  • 重庆自助企业建站模板淘宝关键词top排行榜
  • 平邑网站制作买高端品牌网站
  • 深圳建网站三千网站安全代维
  • 西宁市精神文明建设网站装饰设计甲级资质
  • 做教育行业营销类型的网站徐州做网站多少钱
  • 临沂品牌网站制作企业网站建设搜集资料
  • wordpress注册验证码手机网站优化
  • 往建设厅网站上传东西做衣服的教程网站有哪些
  • 网上商城网站设计免费咨询口腔科医生回答在线
  • 南京网站c建设云世家 s浏览器
  • 如何做镜像别人网站wordpress菜单对齐修改
  • 长春网站建设net企业公示信息查询官网
  • 金鹏建设集团网站可在哪些网站做链接
  • 电子产品网站开发背景网站关键词优化方案
  • 建网站论坛wordpress提交数据库错误
  • 国内网站建设公司开源网站系统
  • 网站开发公司上大连网站建设流程图
  • 银川网站seo宁波网
  • 个人备案网站会影响吗网站添加 备案
  • 网站建设与电子商务的教案关于旅游网站建设的方案
  • 电子商务网站建设设计原则找做网站找那个平台做
  • 天津高端品牌网站建设韶关网站建设墨子
  • Wordpress多站点为什么注册不了2008iis搭建网站
  • 天津高端网站制作建网站的公司服务
  • 温州网站推广优化类似淘宝的网站怎么做的
  • 网站建设实训考试什么网站做玩具的比较多
  • 上海网站建设特点怎样给公司做一个网站做推广
  • 流量网站怎么做的济南优化排名公司
  • 保定网站制作套餐设计师导航网站大全
  • 惠州 商城网站建设石家庄新闻广播在线收听