硒元素不可见[Python]

硒元素不可见[Python],python,selenium,visible,Python,Selenium,Visible,我目前在《用Python自动化无聊的东西》一书的CH11中,我正在学习Selenium模块。我试图移到一页的末尾,但遇到了一些问题。我还试图在这个网站上寻找类似的问题,并尝试了建议的解决方案,但不幸的是没有成功。这是我在空闲Shell中键入的代码: from selenium import webdriver from selenium.webdriver.common.keys import Keys browser= webdriver.Firefox() browser.get('http

我目前在《用Python自动化无聊的东西》一书的CH11中,我正在学习
Selenium
模块。我试图移到一页的末尾,但遇到了一些问题。我还试图在这个网站上寻找类似的问题,并尝试了建议的解决方案,但不幸的是没有成功。这是我在空闲Shell中键入的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser= webdriver.Firefox()
browser.get('http://nostarch.com')
htmlElem= browser.find_element_by_tag_name('html')
type(htmlElem)
<class 'selenium.webdriver.firefox.webelement.FirefoxWebElement'>
htmlElem.send_keys(Keys.END)  # Error
从selenium导入webdriver
从selenium.webdriver.common.keys导入密钥
browser=webdriver.Firefox()
browser.get('http://nostarch.com')
htmlElem=browser.find_element_by_tag_name('html'))
类型(htmlElem)
htmlElem.send_key(key.END)#错误
例外情况-:

Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    htmlElem.send_keys(Keys.END)
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webelement.py", line 347, in send_keys
    self._execute(Command.SEND_KEYS_TO_ELEMENT, {'value': keys_to_typing(value)})
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webelement.py", line 494, in _execute
    return self._parent.execute(command, params)
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute
    self.error_handler.check_response(response)
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotVisibleException: Message: Element is not visible
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
htmlElem.send_键(key.END)
文件“C:\Python\Python35\lib\site packages\selenium\webdriver\remote\webelement.py”,第347行,位于发送键中
self._execute(Command.SEND_KEYS_TO_元素,{'value':KEYS_TO_typing(value)})
文件“C:\Python\Python35\lib\site packages\selenium\webdriver\remote\webelement.py”,第494行,在\u execute中
返回self.\u parent.execute(命令,参数)
文件“C:\Python\Python35\lib\site packages\selenium\webdriver\remote\webdriver.py”,第236行,在execute中
self.error\u handler.check\u响应(响应)
文件“C:\Python\Python35\lib\site packages\selenium\webdriver\remote\errorhandler.py”,第192行,在check\u响应中
引发异常类(消息、屏幕、堆栈跟踪)
selenium.common.exceptions.ElementNotVisibleException:消息:元素不可见
显然
html
元素不可见?我不明白为什么会这样,因为它似乎找到了
html
元素,就像代码上看到的一样,没有任何问题,但是
键。ENTER
是我得到错误的地方。
如果您有任何帮助,我们将不胜感激。

刚刚用Chrome驱动程序测试了以下内容,它可以正常工作(它也可以与Firefox一起工作):


是否尝试通过其他属性定位元素?请尝试
浏览器。通过\u标记\u名称('body')查找\u元素。
。这对梅森克很有效安德森,现在有效了。谢谢@ettanany,现在有效了。你知道为什么它不能与“html”一起工作吗?
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome()
browser.get('http://nostarch.com')
body_elem = browser.find_element_by_tag_name('body')
body_elem.send_keys(Keys.END)