硒并不是所有的元素都在一个奎兹莱特斯

2024-09-29 23:25:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试编写一个脚本,该脚本将转到用户指定的quizlet并创建一个包含术语和定义的文本文件(T&;Ds)。可悲的是,当使用硒,我似乎不能得到所有的t&;D在Quizlet里。你知道为什么它没能做到吗?我的代码在下面

from selenium.webdriver.remote.webelement import WebElement


browser = webdriver.Chrome(executable_path = '/Users/stevejobs/Downloads/chromedriver')

#user_website = input("Enter Something")
user_website = 'https://quizlet.com/273279911/mktg-3433-exam-1-flash-cards/'
browser.get(user_website)

foundElement = False
objectOfInterest: WebElement

print("Looking for terms and definitions")

objectOfInterest = browser.find_elements_by_xpath("//span[@class='TermText notranslate lang-en']")

print("Done Looking")
term = ''
definition = ''
thirdTerm = ''

index = 0

answerLinesList = []

for item in objectOfInterest:

    print(index)

    temp = item.text
    item = temp.rstrip()

    if len(item) == 0:
        print('No text found')
    else:
        if index == 0:
            term = item
            index += 1

        elif index == 1:
            definition = item
            index += 1

        elif index == 2:

            # if there's a hyphen, assume line break
            # else, build answer and clean variables
            if definition[0] == '-':
                print('Found line breaks')
                thirdTerm = item
                index += 1
            else:

                index = 0
                answer = term + " ANSWER: " + definition
                answerLinesList.append(answer)

                print(answer)

                term = item
                definition = ''
                thirdTerm = ''
                answer = ''

        elif index == 3:

            index = 0
            answer = term + " ANSWER: " + definition + thirdTerm
            answerLinesList.append(answer)

            print(answer)

            term = item
            definition = ''
            thirdTerm = ''
            answer = ''



file = open("Quizlet Cheat Sheet.txt", 'w+')

for answer in answerLinesList:
    file.write(answer + '\n')

file.close()

#browser.close()

print('Done with script')

它应该有一个包含所有T&;的文本文件;但遗憾的是,总人数总是非常少


Tags: answerbrowserforindexifwebsiteitemamp

热门问题