Python 如何将所有输出标准化为一个txt文件

Python 如何将所有输出标准化为一个txt文件,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,我在这里工作的一个项目的工作,我有5+元素显示打印行。我需要将所有输出添加到txt文件中。有人告诉我可以使用for循环,但不确定如何使用。我最好的选择是什么 import unittest from selenium import webdriver import time import sys driver = webdriver.Chrome() driver.get('website') driver.maximize_window() # Displays Time Sheet f

我在这里工作的一个项目的工作,我有5+元素显示打印行。我需要将所有输出添加到txt文件中。有人告诉我可以使用for循环,但不确定如何使用。我最好的选择是什么

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文件中以备文档使用。
Selenium 3.5
Python 3.6.1
绑定提供了一种更简单的方法,可以将所有
控制台输出重定向到日志文件中

您可以通过名称
Log
在项目空间中创建子目录,并开始将
控制台输出重定向到日志文件中,如下所示:

# Firefox
driver = webdriver.Firefox(executable_path=r'C:\your_path\geckodriver.exe', log_path='./Log/geckodriver.log')

# Chrome
driver = webdriver.Chrome(executable_path=r'C:\your_path\chromedriver.exe', service_log_path='./Log/chromedriver.log')

# IE
driver = webdriver.Ie(executable_path=r'C:\your_path\IEDriverServer.exe', log_file='./Log/IEdriver.log')
值得一提的是,
webdriver
的详细信息很容易配置


您的意思是“将
stdout
移动到
.txt
文件中”吗?您可以只使用
python myfile.py>out.txt
。否则,请访问并按住Ctrl+F键查看
file
。然后您可能会使用python 3,其中print是一个带有file关键字的函数。欢迎使用堆栈溢出!请参阅:SO的期望是,用户提问时不仅要进行研究以回答自己的问题,还要分享研究、代码尝试和结果。这表明你花了时间来帮助自己,它使我们避免重复显而易见的答案,最重要的是,它帮助你得到一个更具体和相关的答案!另请参见:可能的副本