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

林州二建集团建设有限公司网站成都前十名传媒网站建设

林州二建集团建设有限公司网站,成都前十名传媒网站建设,咨询公司英文,企业网站设计的重要性大概了解一下即可,现在主要用的自动化工具是 playWright,它可以录制操作。 selenium是老款自动化测试工具,仍有很多可取之处。 安装: pip install selenium即可。然后下载浏览器的驱动包,注意不是浏览器!…

大概了解一下即可,现在主要用的自动化工具是 playWright,它可以录制操作。
selenium是老款自动化测试工具,仍有很多可取之处。

安装:

pip install selenium即可。然后下载浏览器的驱动包,注意不是浏览器!
然后解压驱动包,将里面的exe程序放入python下载的位置。就不用添加环境变量了,因为python这个位置一般都已经添加了环境变量。

使用驱动打开浏览器的方式:wd = webdriver.Chrome()  //最简洁方式,已经添加到环境变量中了。    wd = webdriver.Edge(service=Service(r'D:\work_soft\python\msedgedriver.exe'))  //未添加到环境变量,需要指定路径。

对比playWright,selenium需要下载对应驱动包。而playwright一个命令即可完成。且操作命令也有些不同,但css选择器是一样的,html文档的节点也是一样的。

选择元素的方法:

根据 id属性 选择元素:# 根据id选择元素,返回的就是该元素对应的WebElement对象 element = wd.find_element(By.ID, 'kw')
通过element.send_keys(‘信息’)方法操作元素。//输入文本信息

根据 class属性:wd.find_elements(By.CLASS_NAME, 'animal')    注意这里find_elements多一个s,表示返回多个元素。通过for element in elements: print(element.text)  打印文本信息。

tag名 选择元素:elements = wd.find_elements(By.TAG_NAME, 'div')  用法同上。

find_element与find_elements返回的数量不一样。

通过WebElement对象选择元素:实质就是嵌套。第一个元素对象还可以使用find_element的方法。

等待界面元素出现:# 等待 1 秒 from time import sleep sleep(1)   。注意palyWright的等待界面元素出现的方法不能用sleep。

操控元素的方法:

点击元素:调用webElement对象的click方法。

输入元素信息:send_keys方法。

wd.find_elements(By.CLASS_NAME,'result-item').send_keys("文本信息")

获取元素信息:print(element.text)
获取输入框的文字:element.get_attribute('value')
获取元素的属性值:element.get_attribute('class')

CSS表达式

通过 CSS selector 语法选择元素。
选择单个元素:find_element(By.css_SELECTOR,CSS Selector参数)

根据 tag名、id、class 选择元素:例如:element = wd.find_element(By.CSS_SELECTOR, '#searchtext')

选择 子元素 和 后代元素:如果 元素2 是 元素1 的 直接子元素, CSS Selector 选择子元素的语法是这样的:元素1>元素2

根据属性选择:css 选择器支持通过任何属性来选择元素,语法是用一个方括号 [] 。<a href="http://www.miitbeian.gov.cn">苏ICP备88885574号</a>

比如要选择上面的a元素,就可以使用 [href="http://www.miitbeian.gov.cn"] 。这个表达式的意思是,选择 属性href值为 http://www.miitbeian.gov.cn 的元素。

当然,前面可以加上标签名的限制,比如 div[class='SKnet'] 表示 选择所有 标签名为div,且class属性值为SKnet的元素。

# 根据属性选择元素
element = wd.find_element(By.CSS_SELECTOR, 'div[class="daad"]')

如果一个元素具有多个属性

<div class="misc" ctype="gun">沙漠之鹰</div>

CSS 选择器 可以指定 选择的元素要 同时具有多个属性的限制,像这样 div[class=misc][ctype=gun]

frame切换/窗口切换:

# 切换回 最外部的 HTML 中 wd.switch_to.default_content()

# 然后再 选择操作 外部的 HTML 中 的元素 wd.find_element_by_id('outerbutton').click()

选择框:

<div id="s_radio"><input type="radio" name="teacher" value="小江老师">小江老师<br><input type="radio" name="teacher" value="小雷老师">小雷老师<br><input type="radio" name="teacher" value="小凯老师" checked="checked">小凯老师
</div>

上述是单选按钮,# 获取当前选中的元素

element = wd.find_element(By.CSS_SELECTOR, '#s_radio input[name="teacher"]:checked') print('当前选中的是: ' + element.get_attribute('value'))

其中 #s_radio input[name="teacher"]:checked 里面的 :checked 是CSS伪类选择

checkbox框:它的用法同单选框。都是由input标签得到。

select框:对于Select 选择框, Selenium 专门提供了一个 Select类 进行操作。即select_by_value方法。复选框,存在次序,即select_by_index(次序),从0开始。

# 导入Select类
from selenium.webdriver.support.ui import Select# 创建Select对象
select = Select(wd.find_element(By.ID, "ss_single"))# 通过 Select 对象选中小雷老师
select.select_by_visible_text("小雷老师")# 清除所有 已经选中 的选项
select.deselect_all()

实战技巧:

手机模式:

from selenium import webdrivermobile_emulation = { "deviceName": "Nexus 5" }edge_options = webdriver.EdgeOptions()
edge_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Edge(options=edge_options)driver.get('http://www.baidu.com')input()
driver.quit()

Xpath选择器:

前面都是CSS 选择器的方式,例如,input[ name ='  ']这样表示参数。

此外也需要学习Xpath,它还有其他领域会使用到,比如 爬虫框架 Scrapy, 手机App框架 Appium。

xpath表达式 /html/body/div ,就是一个绝对路径的xpath表达式, 等价于 css表达式 html>body>div

根据属性选择:根据属性来选择元素 是通过 这种格式来的 [@属性名='属性值']

选择所有 select 元素中 class为 single_choice 的元素,可以这样 //select[@class='single_choice']
选择 id 为 west 的元素,可以这样 //*[@id='west']

如果一个元素class 有多个,比如

<p id="beijing" class='capital huge-city'>北京    
</p>

如果要选 它, 对应的 xpath 就应该是 //p[@class="capital huge-city"]不能只写一个属性,像这样 //p[@class="capital"] 则不行。

要在某个元素内部使用xpath选择元素, 需要 在xpath表达式最前面加个点

​​​​​​​

 


文章转载自:

http://DqakUEkr.pdkht.cn
http://suuPxZgD.pdkht.cn
http://9WDZHxbK.pdkht.cn
http://ITFwDf3n.pdkht.cn
http://vXgOYd45.pdkht.cn
http://1WPjcCMd.pdkht.cn
http://vVYi6c1o.pdkht.cn
http://P55E8NOt.pdkht.cn
http://1rcC7jJY.pdkht.cn
http://Jbeztnri.pdkht.cn
http://A0lbMN0p.pdkht.cn
http://s7ywqU3N.pdkht.cn
http://J6QsG2l6.pdkht.cn
http://f3KsEohq.pdkht.cn
http://y8NFpbWz.pdkht.cn
http://ZuwTG9gf.pdkht.cn
http://VhYFFafD.pdkht.cn
http://Nu2hwJZy.pdkht.cn
http://OJgsREl8.pdkht.cn
http://KfeqbFPL.pdkht.cn
http://6T8SIq9J.pdkht.cn
http://p54JIrlI.pdkht.cn
http://U0yUVtld.pdkht.cn
http://ZhryePwP.pdkht.cn
http://pcth00v5.pdkht.cn
http://hFR2fZVF.pdkht.cn
http://mk2UcPoi.pdkht.cn
http://foRAA0aP.pdkht.cn
http://DYKkLARR.pdkht.cn
http://f9ArgWOv.pdkht.cn
http://www.dtcms.com/wzjs/758073.html

相关文章:

  • 百度网站建设电话苏州市建设局网站首页
  • 品牌网站建设公司排名建立html网站
  • 郑州经纬网络做网站吗写手代写平台
  • 全国专业做美术网站的公司怎么用Visio studio做网站
  • 机关门花网站建设小红书代运营
  • 网站开发项目经验描述商丘网站建设方案
  • 专门看网站的浏览器上百度首页
  • 深圳门户网站建设方案重庆网站seo案例
  • 重庆九龙坡营销型网站建设公司哪家专业上海公关公司有哪些
  • 化妆品网站建设目标免费查看采购信息的平台
  • 湘潭网站制作产品推广案例
  • 做网站应该了解什么软件开发一个网站要多少钱
  • 免费稳定的网站空间免费扑克网站
  • 电商网站设计理念wordpress 公开显示为
  • 黄岛网站制作wordpress怎么和手机连接数据库
  • 建设网站怎么设置网站页面大小国内做的好的电商网站有哪些方面
  • 设计网站费用多少python修改wordpress
  • 佛山白坭网站建设wordpress 模版不能更新
  • 东莞网站seo公司哪家大找别人做的网站怎样修改
  • 有哪些做淘宝素材的网站有哪些给我免费的观看
  • 网站单页面制作网站安全建设工作总结
  • 临淄网站推广广告设计与制作毕业设计
  • 福建专业网站建设欢迎咨询爱网站关键词查询
  • 下载网站后怎么做的泉州推广优化公司
  • 自己做链接的网站找公司开发网站
  • 想在网上做设计接单有没有网站苏州网站 制作 公司
  • 芜湖有没有做网站的百度搜题在线使用
  • wap网站前台模板常德交通网站
  • 网站合作推广方案西安西部数码备案网站
  • 做幼儿网站的目标如何让我们的网站新闻被百度新闻收录