【问题标题】:Python Selenium get text out of tagsPython Selenium 从标签中获取文本
【发布时间】:2022-11-10 19:16:21
【问题描述】:

我一直在尝试用 Python 和 Selenium 抓取网页并遇到了这个问题。基本上,我正在报废的网页在带有分页的表格中显示信息,因此我想从所有页面中获取信息。这是分页系统的 HTML:

<span class="pagelinks">
   " ["
   <a href="?page=1">First</a>
   "/"
   <a href="?page=2">Previous</a>
   "] "
   <a href="?page=1" title="Go to page 1">1</a>
   ", "
   <a href="?page=2" title="Go to page 2">2</a>
   ", "
   <strong>3</strong>
   " [Next/Last]"
</span>

在这种情况下,第 3 页被选中并显示为 &lt;strong&gt;,但这取决于当前页面。

为了检查我是否在最后一页,我想检查文本“[Next/Last]”是否是 &lt;strong&gt;tag 之后的下一个文本,以停止检索信息的 while 循环,但由于此文本是在任何标签中,我发现无法检查这个,我该如何检查它?

【问题讨论】:

    标签: python selenium selenium-webdriver web-scraping xpath


    【解决方案1】:

    我猜在最后一页上,&lt;span class="pagelinks"&gt; ... &lt;/span&gt; 块内根本没有[Next/Last] 文本,不仅仅是在strong 标记之后。
    如果是这样,您可以非常简单地检查这一点,只需验证父 span 是否包含此 Next/Last 文本内容。
    使用 Selenium / Python,您可以简单地使用这一行:

    if driver.find_elements(By.XPATH, "//span[@='pagelinks'][contains(.,'Next/Last')]"):
        #do what you need to do while still not on the last page
        #otherwise you this block will be skipped 
    

    【讨论】:

      猜你喜欢
      • 2019-07-18
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      • 2020-01-15
      • 2021-10-20
      • 1970-01-01
      • 1970-01-01
      • 2021-06-09
      相关资源
      最近更新 更多