gpt4 book ai didi

python - 使用带有斜纹的 show() 会通过 HTML 向控制台发送垃圾邮件

转载 作者:行者123 更新时间:2023-11-30 23:13:17 24 4
gpt4 key购买 nike

我一直在使用函数twill.commands.show()从页面获取原始HTML。我大约每 5 秒运行一次。每次运行该函数时,它都会向控制台发送上述网页的原始 HTML 垃圾邮件。我需要使用控制台进行调试,并且由于控制台不断充满 HTML,所以这样做是不可能的。由于 show() 被编程为打印 HTML 并将其作为字符串返回,因此我必须编辑斜纹,这超出了我的技能范围,并使程序不兼容在其他设备上。虽然一遍又一遍地保存和读取文件可能有效,但每 5 秒执行一次似乎不切实际。

代码:

go('http://google.com/')
html=show()

同样,斜纹有一个 save_html,可用于保存到文件,但我每 5 秒执行一次此操作,它可能会减慢程序/计算机的速度,尤其是在运行时在较旧的操作系统上。

谢谢!

最佳答案

Twill 默认写入 stdout

您可以使用twill.set_output(fp)来重定向其标准输出。有几种可能的实现方式可以实现此目的:

写入StringIO:

from StringIO import StringIO
sio = StringIO()
twill.set_output(sio)
html = show() # html+'\n' == sio.getvalue()

或到/dev/null:

import os
null = open(os.devnull, 'w')
twill.set_output(null)
html = show() # writing to /dev/null or nul
null.close()

或者什么都不做:

class DevNull(object):
def write(self, str):
pass
twill.set_output(DevNull())
html = show()

或者您喜欢的任何其他可写的类似文件的Python对象。

关于python - 使用带有斜纹的 show() 会通过 HTML 向控制台发送垃圾邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29395105/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com