【问题标题】:How to get the correct css selector for selenium (python)如何为 selenium (python) 获取正确的 css 选择器
【发布时间】:2021-04-14 13:36:31
【问题描述】:

我尝试自动化一些东西。如果我用 selenium IDE 识别 css 选择器,我大部分时间都会得到正确的地址。 如果我使用 chrome 或 firefox 开发者版的检查模式,我不会。我不明白为什么会这样,或者如何解决这个问题。

还有没有办法检查

data-testid="801212545-follow" 

是否包含“关注”?

我使用了以下内容:

elements = driver.find_elements(By.CSS_SELECTOR, ".css-1dbjc4n:nth-child(1) > .css-18t94o4:nth-child(1) > .css-901oao > .css-901oao > .css-901oao")
for elem in elements:
   print(f"{elem}")

得到

<div class="css-1dbjc4n" data-testid="placementTracking"><div class="css-1dbjc4n r-15d164r" style="min-width: 94px;"><div role="button" data-focusable="true" tabindex="0" class="css-18t94o4 css-1dbjc4n r-urgr8i r-42olwf r-sdzlij r-1phboty r-rs99b7 r-1w2pmg r-1vuscfd r-1dhvaqw r-1ny4l3l r-1fneopy r-o7ynqc r-6416eg r-lrvibr" data-testid="801212545-unfollow"><div dir="auto" class="css-901oao r-1awozwy r-jwli3a r-6koalj r-18u37iz r-16y2uox r-1qd0xha r-a023e6 r-b88u0q r-1777fci r-eljoum r-dnmrzs r-bcqeeo r-q4m81j r-qvutc0"><span class="css-901oao css-16my406 css-bfa6kz r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0"><span class="css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0">Folge ich</span></span></div></div></div></div>

有“Folge”,但脚本返回:

【问题讨论】:

    标签: python-3.x selenium-webdriver css-selectors automated-tests


    【解决方案1】:

    识别元素:

    data-testid="801212545-follow" 
    

    您可以使用以下

    [data-testid$='follow']
    

    其中,表达式data-testid$='follow' 检查data-testid 属性的值是否以follow 结尾

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-01
      • 2015-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-18
      • 1970-01-01
      • 2013-09-07
      相关资源
      最近更新 更多