Создайте простой цикл

#python #selenium #loops #webdriver

#python #селен #циклы #webdriver

Вопрос:

Как я могу сообщить своему коду, чтобы он не заканчивался и не начинался снова?
С 1-го try:

запуск = True во время выполнения:

 f = open('list.txt', 'r', encoding='utf-8').readlines()
for word in f:
    if word == "n":
        continue
    
    
driver.find_element_by_xpath(Newtweet_button).click()
sleep(0.5)

   
driver.find_element_by_xpath(message_paste).send_keys(word)
        
try:
    driver.find_element_by_xpath(post_tweet_xpatch).click()
    sleep(1)

except (ElementClickInterceptedException):
    driver.find_element_by_xpath(cross_button).click()

except (NoSuchElementException):
    print("tweet not send")
    driver.find_element_by_xpath(cross_button).click()
    sleep(4)

else:    
    driver.find_element_by_xpath(close_button2).click()  
    sleep(4)
f.close()       
 

Комментарии:

1. Привет, фахад, похоже, вы добавили код без отступов, будет легче ответить, если вы добавите отступ, как показано в вашем файле.

Ответ №1:

Используйте цикл while:

 running = True
while running:
    #your code
 

Это не остановится до тех пор, пока для параметра running не будет установлено значение false: running = false

Или у вас может быть количество:

 count = 0

while count >= 3:
    #your code
    count  = 1
 

Это заставит код выполняться 3 раза.

РЕДАКТИРОВАТЬ: чтобы закрыть ваш файл, вам не нужно читать переменную file, например, так:

  with open('list.txt', 'r', encoding='utf-8') as f:
      file = f.readlines()
      for word in file:
          if word == "n":
             continue
 

Комментарии:

1. Пока цикл работает отлично, спасибо!

2. Но у меня есть проблема, с помощью которой я не могу закрыть свой файл f f.close() . Я получаю эту ошибку f.close() AttributeError: 'list' object has no attribute 'close'

3. рад, что ваш цикл теперь работает, не могли бы вы показать мне свой код, что мешает вашему файлу закрыться? вы можете сделать это, отредактировав свой вопрос выше

4. теперь вы можете проверить

5. является ли это причиной того, что код считывает только последнюю строку текстового файла и всегда отправляет последнюю строку в качестве ключа