【问题标题】:How do I resolve this error in trying to copy text from an already open webpage?在尝试从已打开的网页复制文本时如何解决此错误?
【发布时间】:2023-02-26 19:09:53
【问题描述】:

我正在使用 google colab 运行稳定的扩散,我想制作一个包含所有提示和设置的 txt 文件。它们位于 Web 用户界面中生成的图像下的 div 类元素中。我想要一个 python 代码来复制文本(带有促销和设置)并在每次输入文件名时将其保存在 txt 文件中。

这是我的代码

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('https://1234.gradio.live')

while True:
    folder_path = input("Enter folder path to save text files: ")
    file_name = input("Enter file name to save text: ")
    if file_name == 'stop':
        break
    file_path = folder_path + '\\' + file_name + '.txt'

    transition_div = browser.find_element_by_xpath('//div[@class="transition"]')
    p_elements = transition_div.find_elements_by_tag_name("p")
    p_texts = [p.text for p in p_elements]

    with open(file_path, 'w', encoding='utf-8') as f:
        for p_text in p_texts:
            f.write(p_text + '\n')
        print(f"Text saved in {file_path}")

browser.quit()

这是我得到的错误:

Traceback (most recent call last):
  File "C:\User\..\selenium firefox.py", line 13, in <module>
    transition_div = browser.find_element_by_xpath('//div[@class="transition"]')
AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'

我该如何解决?

【问题讨论】:

    标签: python selenium-webdriver google-colaboratory


    【解决方案1】:

    不确定您使用的是哪个版本的硒,但语法在当前版本 (4.8.2) 中看起来有所不同。所以它应该类似于 driver.find_element(By.XPATH, ...)

    看一下: https://selenium-python.readthedocs.io/locating-elements.html

    【讨论】:

      猜你喜欢
      • 2020-02-07
      • 1970-01-01
      • 2022-03-21
      • 2021-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-03
      • 1970-01-01
      相关资源
      最近更新 更多