Environment variables
I use the module mechanize
in order to log in a site. When I import twill.commands
without any other apparent use, some debug messages [0] are displayed [1]. When I delete it, these messages disappear.
How can I see what is changed in the environment in order to emulate it and remove this dependency?
[0] Using the logging module.
[1] More specifically, I am interested in a Following HTTP-EQUIV=REFRESH
message.
UPDATE: It turned out that there is a bug in twill.commands which was creating an error when trying to follow the HTTP-EQUIV=REFRESH
header. After removing the import twill.commands
and the ugly work around it, e开发者_如何转开发verything works smoothly.
My guess - without digging in the libraries - is that twill is instantiating a logger, and mechanize is doing the Right Thing for a library, logging if logging has been turned on, not if not.
To enable the logging of mechanize
configure a logging.basicConfig root in your application code.
twill
uses mechanize
internally, you can log into a web site directly with twill
.
To follow http-equiv
redirection, just use the go
command.
go <url>
-- visit the given URL. The Python function returns the final URL visited, after all redirects.
To debug http-equiv
redirects, enable the relevant debug level.
debug <what> <level>
-- turn on or off debugging/tracing for various functions. The first argument is either 'http' to show HTTP headers, 'equiv-refresh' to test HTTP EQUIV-REFRESH headers, or 'commands' to show twill commands. The second argument is '0' for off, '1' for on.
精彩评论