如何从Selenium获取的WebElement文本中移除指定内容?
移除Selenium获取文本中的指定片段解决方案
你用Selenium获取到的文本为clubname1 vs clubname 2,需要移除其中的vs片段得到clubname1 clubname2,以下是几种有效解决方案:
直接使用字符串replace方法
这是最直接的方式,精准匹配带前后空格的vs片段并替换为单个空格,避免误删其他内容:matchname = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='text-nowrap text-truncate text-muted']"))) original_text = matchname.text cleaned_text = original_text.replace(' vs ', ' ') print(cleaned_text)分割过滤后合并(更稳妥)
如果文本中vs前后的空格数量不确定,可先按空格分割文本,过滤掉vs后再重新合并:matchname = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='text-nowrap text-truncate text-muted']"))) original_text = matchname.text # 分割成列表,过滤掉'vs'元素 cleaned_parts = [part for part in original_text.split() if part != 'vs'] # 合并为字符串 cleaned_text = ' '.join(cleaned_parts) print(cleaned_text)
另外,你之前尝试的numpy.char.lstrip之所以无效,是因为该方法仅用于移除字符串开头的指定字符集合,而非中间的完整片段,完全不适用于当前场景。
内容的提问来源于stack exchange,提问作者ElBob
相关产品推荐
相关产品推荐

