【问题标题】:Selecting specific text part of html text code选择 html 文本代码的特定文本部分
【发布时间】:2020-11-16 22:11:39
【问题描述】:

请问,我怎样才能得到“没有事件,稍后再试”的文本。从这个html?

...</option></select><!-- --></div><div class="media_container__no-match-tracker"><div><div><div class="icon icon--football icon--size_auto"></div><div class="icon icon--volleyball icon--size_auto"></div><div class="icon icon--handball icon--size_auto"></div><div class="icon icon--hockey icon--size_auto"></div><div class="icon icon--basketball icon--size_auto"></div><div class="icon icon--tennis icon--size_auto"></div></div> There is no event, try later. </div></div></div></div></div><div class="app_column__bottom_row" data-v-eb1959b8=""><div class="app_column__bottom_row_wrapper" data-v-eb1959b8=""><div class="app_column__bottom_row_content" data-v-eb1959b8=""><div class="tab_menu chatMenu" data-v-4d018892="" data-v-eb1959b8=""><div ...

我试试:

driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[2]/div/div/div[1]/div/div[2]/div[2]/div')

但只返回:

<selenium.webdriver.remote.webelement.WebElement (session="d79e3bdd44586c81ae5922410f0c20dd", element="405526fe-7e1a-4552-af5a-70cfb341e129")>

我使用 python3、selenium、bs4、headless chrome。谢谢。

【问题讨论】:

  • 请分享您尝试的完整代码/链接到该网站
  • @MendelG 链接:live.ifortuna.sk/zapas/LSK1657222 我需要查找文本:“Tento zápas nemá tracker, vyberte si iný。”
  • 找到元素后需要.text。

标签: python python-3.x selenium web-scraping beautifulsoup


【解决方案1】:

有点难以阅读您的代码和 html,但试试这个 xpath 定位器:

//div[@class='media_container__no-match-tracker']

并返回元素的文本:

driver.find_element_by_xpath('//div[@class="media_container__no-match-tracker"]').text

【讨论】:

    【解决方案2】:

    @DMart

    谢谢,这正是我需要的。我可以再问一个问题吗?网站是动态的,所以这个元素不在代码everityme中,我把它刮掉了。如果没有,则 thist driver.find... 返回:

            driver.find_element_by_xpath('//div[@class="media_container__no-match-tracker"]').text
    
    Traceback (most recent call last):
    
    
    
      File "<ipython-input-95-8dcfa123bd2a>", line 1, in <module>
        driver.find_element_by_xpath('//div[@class="media_container__no-match-tracker"]').text
    
      File "C:\Users\Miro\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath
        return self.find_element(by=By.XPATH, value=xpath)
    
      File "C:\Users\Miro\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 978, in find_element
        'value': value})['value']
    
      File "C:\Users\Miro\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
        self.error_handler.check_response(response)
    
      File "C:\Users\Miro\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
        raise exception_class(message, screen, stacktrace)
    
    NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":"//div[@class="media_container__no-match-tracker"]"}
      (Session info: headless chrome=86.0.4240.193)
    
    

    我如何将其用作条件?如果元素在站点上,则打印它,如果不是,则 print("element isnt on this url").

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    • 2020-11-19
    • 2018-06-03
    • 2011-03-01
    • 1970-01-01
    • 2023-01-20
    相关资源
    最近更新 更多