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

python自动控制chrome_PythonseleniumwebdriverChrome由一个自动化的

我正在使用seleniumwebdriver并创建一个chrome驱动程序实例。当我尝试向下和向上滚动时,会收到以下错误消息。此外,我可以看到一条错误消

我正在使用selenium webdriver并创建一个chrome驱动程序实例。当我尝试向下和向上滚动时,会收到以下错误消息。此外,我可以看到一条错误消息“Chrome正在由一个自动化软件控制”。看到这个错误很烦人,尽管我无法在Chrome浏览器中更改任何允许自动化的设置。from selenium import webdriver

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.common.by import By

from selenium.webdriver.support.ui import WebDriverWait as wait

from selenium.common.exceptions import TimeoutException

from log_util.logger import log as Log

import time

log = Log()

class Wiki(object):

def __init__(self):

self.link = 'http://wikipedia.org'

self.path = '/Users/swadhikar_c/Downloads/chromedriver'

self.driver = webdriver.Chrome(executable_path=self.path)

def open_wiki(self):

driver = self.driver

driver.get(self.link)

return self.wait_for_page_load()

def wait_for_page_load(self, timeout=200):

is_element_located = EC.presence_of_element_located((By.CLASS_NAME, 'central-featured-logo'))

try:

wait(self.driver, timeout=int(timeout)).until(is_element_located)

print("Page loaded successfully")

time.sleep(5)

except TimeoutException:

print("Operation timed out")

raise

return 1

def scroll_down_up(self):

driver = self.driver

element = driver.find_element(By.TAG_NAME, 'html')

element.send_keys(Keys.END)

print("Scrolled down to the end!")

time.sleep(5)

element.send_keys(Keys.HOME)

print("Scrolled up to the top!")

time.sleep(5)

def close_driver(self):

self.driver.quit()

if __name__ == '__main__':

wiki = Wiki()

try:

if not wiki.open_wiki():

print("Operation failed")

wiki.scroll_down_up()

finally:

wiki.close_driver()

错误消息:/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/swadhikar_c/pycharm_projects/pyselenium/PySelenium/test/selenium_test.py

Page loaded successfully

Traceback (most recent call last):

File "/Users/swadhikar_c/pycharm_projects/pyselenium/PySelenium/test/selenium_test.py", line 64, in

wiki.scroll_down_up()

File "/Users/swadhikar_c/pycharm_projects/pyselenium/PySelenium/test/selenium_test.py", line 43, in scroll_down_up

element.send_keys(Keys.END)

File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webelement.py", line 349, in send_keys

'value': keys_to_typing(value)})

File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webelement.py", line 493, in _execute

return self._parent.execute(command, params)

File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 249, in execute

self.error_handler.check_response(response)

File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 193, in check_response

raise exception_class(message, screen, stacktrace)

selenium.common.exceptions.WebDriverException: Message: unknown error: cannot focus element

(Session info: chrome=57.0.2987.133)

(Driver info: chromedriver=2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.12.4 x86_64)Process finished with exit code 1

9WVus.jpg



推荐阅读
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
author-avatar
手机用户2602907455
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有