2010-06-14 254 views
1

我使用模塊mechanize來登錄網站。當我import twill.commands沒有任何其他明顯的用途時,顯示一些調試消息[0] [1]。當我刪除它時,這些消息消失。環境變量

如何查看環境中發生了什麼變化以模擬它並消除這種依賴關係?

[0]使用記錄模塊。 [1]更具體地說,我對Following HTTP-EQUIV=REFRESH消息感興趣。

更新:事實證明twill.commands中存在一個錯誤,它在嘗試遵循HTTP-EQUIV=REFRESH標題時正在創建錯誤。在刪除了import twill.commands及其周圍的醜陋工作後,一切正常。

回答

1

我的猜測是 - 沒有在庫中挖掘 - 是斜紋實例化一個記錄器,機械化爲庫做着Right Thing,記錄日誌是否已打開,如果沒有,則記錄。

要啓用mechanize的日誌記錄,請在您的應用程序代碼中配置一個logging.basicConfig根。

1

twill在內部使用mechanize,您可以直接使用twill登錄網站。

要關注http-equiv重定向,請使用go command

go <url> - 訪問給定的URL。 Python函數返回所有重定向後訪問的最終URL,

要調試http-equiv重定向,請啓用相關調試級別。

debug <what> <level> - 打開或關閉 各種功能的調試/跟蹤。第一個參數是'http'顯示HTTP標頭,'equiv-refresh'測試HTTP EQUIV-REFRESH標頭,或者'commands'顯示斜紋命令。第二個參數是「0」表示關閉,「1」表示關閉。

+0

當'twill'被導入時,我無法使用'go'命令跟蹤'http-equiv'重定向。它總是引發關於urllib的例外... – 2010-06-14 16:14:45

+0

在這裏工作。嘗試從http://code.google.com/p/twill/source/checkout安裝最新的twill – gimel 2010-06-14 16:19:14

+0

我必須在Debian檔案中使用該版本,這確實是相當古老。 – 2010-06-14 16:34:59