【问题标题】:Python Selenium - How to remove whitespacing/spaces from outtputted text?Python Selenium - 如何从输出文本中删除空格/空格?
【发布时间】:2021-07-29 07:45:34
【问题描述】:

大家好,我肯定不知道如何从打印出来的文本中删除空格。我正在使用音频到文本机器人,用于验证码,它可以很好地输出文本,但有时如果机器人无法识别单词在说什么,它会创建随机空格。

一个例子是它猜对了这个词,但发生了这种情况:

  • FE R2B
  • C39 3OP
  • 95 4JGE
  • YU J51 A

我相信你知道我的意思,如果不是 ^ 它只是在将音频输出到文本时随机创建空格。我已经尝试过 .strip() 函数,但它们似乎不起作用,或者我只是做错了,是的,我已经检查了很多论坛,看看我是否可以让它工作,但我就是不知道为什么我要问在这里。

下面是代码,方便大家理解:

key=r.recognize_google(audio)
    print("[INFO] Recaptcha Passcode: %s"%key)
    time.sleep(3)
    CaptchaKey = driver.find_element_by_id("captcha-value").send_keys(key)
    time.sleep(4)
    Submit = driver.find_element_by_xpath('/html/body/div[3]/main/div[3]/div/div[2]/form/div/fieldset[15]/div/input').click()

    if driver.find_element_by_xpath('//*[@id="reg-captcha"]/span').is_displayed():
        print('CaptchaFailed')

打印输出部分是显示验证码的外观,然后将其发送到文本框中,但它再次带有空格,音频机器人创建试图找出单词是什么。

【问题讨论】:

    标签: python selenium spaces removing-whitespace


    【解决方案1】:

    如果您只想从输出的文本字符串中删除空格...

    text = 'FE R2B'
    text = text.replace(' ', '')
    print(text)
    
    FER2B
    

    更新代码针对您的具体情况:

    key=r.recognize_google(audio)
    key = key.replace(' ', '')
    print("[INFO] Recaptcha Passcode: %s"%key)
    

    【讨论】:

    • 我不需要在那个表达式类型中。文本是动态的,当机器人将音频更改为文本时会发生变化...
    • 好的,你不能直接获取任何值并使用上面显示的相同 replace() 方法吗?是否是动态的并不重要。
    • 如果没关系,我将如何实施?因为我正在从谷歌音频中调用密钥
    • 你的问题是how to remove whitespacing/spaces from outputted text,这就是我在回答中给你的。我假设您有一个可以使用的text 值。我看不出音频与此有什么关系。音频只是创建文本,对吗?并且返回的文本有时会包含空格?无论该值是什么,您都可以使用上面显示的replace() 方法从其中去除空格,然后继续执行下一个任务。如果我误解了您的需求,请忽略我的回答
    • 如果我理解正确的话,我刚刚用一些特定于你的场景的代码更新了我的答案。
    猜你喜欢
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-16
    • 2022-01-14
    • 1970-01-01
    相关资源
    最近更新 更多