文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python selenium系列(11

2023-01-31 06:15

关注

前言

Selenium系列文章已经基本涵盖了主要的知识点,至于PO模式,发现有篇文章写的挺好的,后续转载分享过来,哈哈。Python Web UI自动化技术就要告一段落了,接下来打算写Django Web开发相关的文章,希望有兴趣的同学可以关注、一起学习,最后的目标是基于Django开发一套简易系统作为系列文章的总结。然后再继续网络爬虫、数据分析。。。好吧,感觉好多,而且只能靠业余时间来整。。。

 

作为Selenium系列的完结,本文将对一些常用问题进行总结,同时也参考了网络上的一些资料,一并分享给大家。

 

常见问题总结

1.      如何使用ChromeDriver 驱动?

Selenium支持多种浏览器,而不同的浏览器需要有对应的驱动来支持,对于ChromeDriver,推荐从镜像地址下载:http://npm.taobao.org/mirrors/chromedriver/,然后解压出chromedriver的可执行文件,直接放到python安装路径且与python.exe同级目录即可。可参看文章python selenium系列(一):框架介绍及安装。

 

2.      Selenium的元素定位思想?

除了基本的元素定位方法外,需要理解分层定位、多框架\多窗口、多级菜单等定位思想和应用场景,以及在此思想上的具体问题具体分析。

 

3.      如何向下滚动到页面的底部?

可以在加载完成的页面上使用 execute_script 方法执行js,调用javascript API滚动到底部或页面的任何位置。

如滚动到页面底部的操作方法:

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

 

该 window 对象在DOM有一个滚动到窗口任意位置的scrollTo方法。 scrollHeight是所有元素的共同属性,document.body.scrollHeight 将给出整个页面体的高度。

 

4.      如果上传文件到文件上传控件?

选择 <input type="file"> 元素并且调用 send_keys() 方法传入要上传文件的路径,可以是绝对路径,也可以是相对路径(比较鸡肋)。 请注意Windows和Unix系统路径的区别。

 

5.      如果获取当前窗口的截图?

使用webdriver提供的 save_screenshot 方法:

 

from selenium import webdriver

driver = webdriver.Firefox()

driver.get('/file/imgs/upload/202301/31/omreo5vnox2.jpg')

driver.quit()

 

6.      如何处理弹框?

使用webdriver提供的alert_is_present方法。

from selenium.webdriver.support import expected_conditions as EC

#判断弹框是否出现,如果出现则点击取消,否则无须处理

result = EC.alert_is_present()(browser) # 如果存在 返回alter对象,否则返回false, 源码

if result:

    print(result.text)

    result.dismiss()

else:

    pass


三 其他资源

关于python学习、分享、交流,笔者开通了微信公众号【小蟒社区】,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学python。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯