热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:selenium自动化操作火狐PhantomJS浏览器

篇首语:本文由编程笔记#小编为大家整理,主要介绍了selenium自动化操作火狐PhantomJS浏览器相关的知识,希望对你有一定的参考价值。需要下

篇首语:本文由编程笔记#小编为大家整理,主要介绍了selenium自动化操作火狐PhantomJS浏览器相关的知识,希望对你有一定的参考价值。



需要下载每种浏览器的驱动程序 并且记录该驱动存放路径

PhantomJS:


#PhantomJS已经不被selenium支持 但是现在好像还能用 使用的话 需要降低selenium版本
#
或者使用无窗口化的火狐谷歌驱动
from selenium import webdriver
import time
#phantomjs路径
path = r\'D:\\Python\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe\'
browser
= webdriver.PhantomJS(path)
#打开百度
url = "http://www.baidu.com/"
browser.get(url)
time.sleep(
3)
#拍照片
browser.save_screenshot(r\'phantomjs_photo\\baidu.png\')
time.sleep(
3)
#找百度input搜索框
my_input = browser.find_element_by_id(\'kw\')
#往搜索框写文字
my_input.send_keys(\'美女\')
browser.save_screenshot(r
\'phantomjs_photo\\meinv.png\')
time.sleep(
3)
#查找搜索按钮
button = browser.find_elements_by_class_name(\'s_btn\')[0]
button.click()
time.sleep(
3)
browser.save_screenshot(r
\'phantomjs_photo\\show.png\')
time.sleep(
3)
browser.quit()

 

 

 

 

 

 以上都是程序自动截图的

selenium操作phantomjs豆瓣电影下拉


from selenium import webdriver
import time
#phantomjs路径
path = r\'D:\\Python\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe\'
browser
= webdriver.PhantomJS(path)
url
= "https://movie.douban.com/typerank?type_name=%E7%88%B1%E6%83%85&type=13&interval_id=100:90&action="
browser.get(url)
time.sleep(
3)
browser.save_screenshot(r
\'phantomjs_photo\\douban.png\')
#让browser执行简单的极速代码,模拟滚动到底部
js = \'document.body.scrollTop=10000\'
browser.execute_script(js)
time.sleep(
3)
browser.save_screenshot(r
\'phantomjs_photo\\xiala.png\')
#获取网页的代码,保存到文件中
html = browser.page_source
with open(r
\'phantomjs_photo\\douban.html\',\'w\',encoding=\'utf8\') as fp:
fp.write(html)
browser.quit()

 

 火狐浏览器驱动


#自动搜索美女图片点开
from selenium import webdriver
import time
#驱动路径
path =r\'E:\\py\\爬虫day5\\geckodriver.exe\'
#模拟创建一个对象,然后通过对象去操作浏览器 注意方法Firefox() 大写F
browser = webdriver.Firefox(executable_path=path)
#print(browser)
#让他打开百度
url= "http://www.baidu.com"
browser.get(url)
#开启和操作需要加时间
time.sleep(3)
#找百度input搜索框
my_input = browser.find_element_by_id(\'kw\')
#往搜索框写文字
my_input.send_keys(\'美女\')
time.sleep(
3)
#查找搜索按钮
button = browser.find_elements_by_class_name(\'s_btn\')[0]
button.click()
time.sleep(
3)
#找到图片点击
image = browser.find_elements_by_class_name(\'op-img-address-link-imgs\')[2]
image.click()
time.sleep(
2)
#关闭浏览器,退出浏览器
browser.quit()



推荐阅读
  • 本文详细介绍了在MySQL中如何高效利用EXPLAIN命令进行查询优化。通过实例解析和步骤说明,文章旨在帮助读者深入理解EXPLAIN命令的工作原理及其在性能调优中的应用,内容通俗易懂且结构清晰,适合各水平的数据库管理员和技术人员参考学习。 ... [详细]
  • 系统转换的三种方法及其具体应用分析
    系统转换是信息技术领域中常见的任务,本文详细探讨了三种主要的系统转换方法及其具体应用场景。这些方法包括:代码迁移、数据迁移和平台迁移。文章通过实例分析了每种方法的优势和局限性,并提供了实际操作中的注意事项和技术要点。例如,代码迁移适用于从VB6获取网页源码,数据迁移在Ubuntu中用于隐藏侧边栏,而平台迁移则涉及Tomcat 6.0的使用和谷歌爬虫的测试。此外,文章还讨论了蓝翰互动PHP面试和5118 SEO工具在系统转换中的应用,为读者提供了全面的技术参考。 ... [详细]
  • 帝国CMS中的信息归档功能详解及其重要性
    本文详细解析了帝国CMS中的信息归档功能,并探讨了其在内容管理中的重要性。通过归档功能,用户可以有效地管理和组织大量内容,提高网站的运行效率和用户体验。此外,文章还介绍了如何利用该功能进行数据备份和恢复,确保网站数据的安全性和完整性。 ... [详细]
  • Swoole加密机制的安全性分析与破解可能性探讨
    本文深入分析了Swoole框架的加密机制,探讨了其在实际应用中的安全性,并评估了潜在的破解可能性。研究结果表明,尽管Swoole的加密算法在大多数情况下能够提供有效的安全保护,但在特定场景下仍存在被攻击的风险。文章还提出了一些改进措施,以增强系统的整体安全性。 ... [详细]
  • PHP 各版本对比:标准版与最新顶级版的详细分析 ... [详细]
  • Webdriver中元素定位的多种技术与策略
    在Webdriver中,元素定位是自动化测试的关键环节。本文详细介绍了8种常用的元素定位技术与策略,包括ID、名称、标签名、类名、链接文本、部分链接文本、XPath和CSS选择器。每种方法都有其独特的优势和适用场景,通过合理选择和组合使用,可以显著提高测试脚本的稳定性和效率。此外,文章还探讨了在复杂页面结构中如何灵活运用这些定位技术,以应对各种挑战。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • 当PHP中的tempnam()函数被禁用后的应对策略与解决方案
    当 PHP 中的 `tempnam()` 函数被禁用时,开发者需要采取相应的替代方案以确保应用程序的正常运行。本文探讨了多种应对策略,包括使用 `sys_get_temp_dir()` 结合自定义文件命名方法,以及利用第三方库来生成临时文件。此外,还详细介绍了如何在不同操作系统和服务器环境中配置临时文件路径,以提高代码的兼容性和安全性。 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • 如何在PHP中准确获取服务器IP地址?
    如何在PHP中准确获取服务器IP地址? ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 利用PHP循环高效处理多条帖子表单数据 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • Windows 7集成IE11:离线安装包与系统补丁全面解析
    在将Internet Explorer 11集成到Windows 7系统中时,需预先安装多个关键系统补丁,包括KB2731771、KB2786081、KB2834140、KB2670838、KB2729094和KB2888049。这些补丁不仅确保了系统的兼容性和稳定性,还为IE11的顺利安装提供了必要的支持。此外,建议在安装过程中遵循官方文档中的步骤,以避免潜在的兼容性问题。 ... [详细]
author-avatar
放肆的微笑-扯痛了忧伤
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有