【发布时间】:2013-11-10 23:33:00
【问题描述】:
我正在尝试从以下 URL 站点记录文本:http://radio.nolife-radio.com:8000/played.html 成一个文本文件。我决定尝试使用 Python Logging 模块。到目前为止,我什么也没得到,我一直在这里阅读:http://docs.python.org/dev/library/logging.html 不确定我应该使用 SocketHandler 还是 HTTPHandler。我对此很陌生,仍在浏览教程。使用 Urllib 或我不知道的东西可能有一个更简单的解决方案。 URL 站点是一个广播电台,在每首曲目之后都会更新。我希望记录更新的信息。以下是目前的进展:
import logging, logging.handlers
logger = logging.getLogger('Radio Station')
logger.setLevel(logging.INFO)
fh = logging.FileHandler('thread.log')
fh.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
fh.setFormatter(formatter)
logger.addHandler(fh)
host = 'localhost:8000'
url = 'www.radio.nolife-radio.com:8000/played.html'
http_handler = logging.handlers.HTTPHandler(host, url, method='GET')
logger.addHandler(http_handler)
logger.info("")
上面的代码目前不起作用。如果我删除 HTTP 代码,结果如下:
2013-11-11 00:22:19,640 - Radio Station - INFO -
任何帮助将不胜感激。
【问题讨论】:
-
是否要获取 URL 并将内容写入文件?
-
我认为这可能是术语错误的问题。
Logging更多地用于记录程序中的活动。你应该可以使用urllib:urllib.urlopen("http://radio.nolife-radio.com:8000/played.html").read() -
那太好了。类似的,是的。
-
如果你在 linux 上,你可以从命令行使用 curl。
-
我使用的是 Windows 7 操作系统,我会尝试使用 urllib 看看效果如何。
标签: python url logging text handlers