0
私はここのプロジェクトで仕事をしています.5行以上の要素にプリントラインが表示されています。すべての出力をtxtファイルに追加する必要があります。私はforループを使うことができるとは言われましたが、どうしたらよいかわかりません。私の最高の選択肢は何ですか?すべての出力を1つのtxtファイルにstdoutするには
import unittest
from selenium import webdriver
import time
import sys
driver = webdriver.Chrome()
driver.get('website')
driver.maximize_window()
# Displays Time Sheet for Current Day
element = driver.find_element_by_xpath('//*[@id="page-wrapper"]/div[1]/h1')
# this element is visible
print(element.text)
# Displays Start Time
element = driver.find_element_by_xpath('//*
[@id="pageinner"]/div/div[1]/div/div/div/div[1]/div[2]/div[1]')
print("Start time was at:", element.text)
# Displays End Time
element = driver.find_element_by_xpath('//*
[@id="pageinner"]/div/div[1]/div/div/div/div[4]/div[2]/div[1]')
print("Clocked out as of:", element.text)
# Displays when out to Lunch
element = driver.find_element_by_xpath('//*[@id="page-
inner"]/div/div[1]/div/div/div/div[2]/div[2]/div[1]/h3')
print("I left for Lunch at:", element.text)
# Displays when back from Lunch
element = driver.find_element_by_xpath('//*[@id="page-
inner"]/div/div[1]/div/div/div/div[3]/div[2]/div[1]/h3')
print("I arrived back from Lunch at:", element.text)
# Total Hours for The Day
element = driver.find_element_by_xpath('//*[@id="page-
inner"]/div/div[1]/div/div/div/div[5]/div[2]/div[1]')
print("I was at work for:", element.text)
'''
# Save to txt
sys.stdout = open('file.txt', 'w')
print(element.text)
'''
# Screenshot
# driver.save_screenshot('screenshot.png')
driver.close()
if __name__ == '__main__':
unittest.main()
最後に、すべての印刷物を文書化するためにtxtファイルに保存する必要があります。
「stdout」を '.txt'ファイルに移動することを意味しますか? 'python myfile.py> out.txt'だけです。 – YoYoYonnY
それ以外の場合は、https://docs.python.org/2/tutorial/inputoutput.html、Ctrl + F:ファイルをご覧ください。 – YoYoYonnY
私はそれを試みましたが、うまくいきませんでした –