Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 硒在PC和RPI上的性能差异_Python_Selenium_Xpath_Css Selectors_Classname - Fatal编程技术网

Python 硒在PC和RPI上的性能差异

Python 硒在PC和RPI上的性能差异,python,selenium,xpath,css-selectors,classname,Python,Selenium,Xpath,Css Selectors,Classname,我有一些在我的电脑上开发的代码,可以检查某个博客帖子上的赞数。它在我使用最新版本的CHrome和ChromeDriver for Python的PC上运行得非常好 但是,当我使用chromium将此代码传输到我的RPI时。它仍在运行,但找不到该版本在PC上运行的任何元素 它是完全相同的网页,如果我手动检查元素,但是RPI上的代码没有找到它 这是否与RPI相对于我的PC的内存量有关,或者与其他硬件相关的问题有关 我认为这不重要,但我试图找到的要素是: driver.find_elements_by

我有一些在我的电脑上开发的代码,可以检查某个博客帖子上的赞数。它在我使用最新版本的CHrome和ChromeDriver for Python的PC上运行得非常好

但是,当我使用chromium将此代码传输到我的RPI时。它仍在运行,但找不到该版本在PC上运行的任何元素

它是完全相同的网页,如果我手动检查元素,但是RPI上的代码没有找到它

这是否与RPI相对于我的PC的内存量有关,或者与其他硬件相关的问题有关

我认为这不重要,但我试图找到的要素是:

driver.find_elements_by_class_name('like-button.ignore-click.is-animated.has-label')
在WordPress.com网站上

这与这个问题类似:


但是,我有不同的代码,可以在rpi和pc上正常运行,即使元素在窗口中不可见,也可以在您试图传递多个类的代码块中找到它们

根据执行文件:

class selenium.webdriver.common.by.By
    Set of supported locator strategies.

    CLASS_NAME = 'class name'
所以

  • 使用
    find\u element\u by\u class\u name()
    将无法传递多个类名
您可以在中找到详细的讨论

实际上,当使用类似按钮的
时。忽略单击。是动画。将标签作为定位器时,您使用的是


解决方案 作为解决方案,您可以使用以下任一选项:

  • 使用
    CSS\u选择器

    driver.find_element_by_css_selector(".like-button.ignore-click.is-animated.has-label")
                      Note the added ^^^ . ^^^ character in the begining
    
  • 使用
    XPATH

    driver.find_element_by_xpath("//*[@class='like-button ignore-click is-animated has-label']")
    

要进行调试,您可能需要添加代码以拍摄屏幕截图,并检查在RPI情况下呈现的内容。此外,您还没有添加脚本抛出的任何特定错误。脚本本身没有给出任何错误,它只是返回一个空数组,因为它没有找到特定元素。感谢您的解决方案!我到家后再试试,然后回来报到。在这种情况下,pc和RPI的性能会有所不同,您对此有何见解?谢谢您的帮助。@JLJ我认为这一行代码不会对性能产生任何影响,但它是关于编写优化的定位器的。您的整个测试套件的性能是一个更大的画面,是的,有最佳实践。我使用css选择器实现,现在它可以工作了!谢谢