2010-12-16 94 views
2

當我在只有HTTP標頭的大文件上運行我的Python代碼後,它給了我上述錯誤。任何想法是什麼意思?ValueError:無效文字爲int()以10爲底:'MSIE'

這裏是一塊代碼:

users = output.split(' ')[1] 
accesses = output.split(' ')[3] 
ave_accesses = int(accesses)/int(users) 

基本上「用戶」是誰訪問過一個網站,並「訪問」的訪問由用戶到該網站的用戶總數。 'ave_accesses'給出了普通用戶訪問該網站的次數。我希望這足以澄清事情,如果不是我可以解釋更多。

非常感謝,Adia。

+1

「我的Python代碼」? 「只有HTTP標頭的大文件」?沒有追蹤。沒有代碼。我們沒有線索。 – 2010-12-16 12:05:50

+0

我在上面的帖子中做了一些修改。告訴我如果不夠。 – Adia 2010-12-16 12:14:14

+1

還不夠。你應該發佈一個示例數據。旁白評論:你不需要調用'split'兩次。 'splito = output.split();用戶= splito [1]; accesscesses = splito [3]'。 – khachik 2010-12-16 12:19:35

回答

2

這意味着您正在嘗試將字符串轉換爲整數,並且該字符串的值爲'MSIE'。回溯將在該錯誤和行號附近具有文件名(例如/my/module.py:123)。打開文件並轉到發生錯誤的行,您應該看到使用參數調用int()。該參數可能應該是字符串形式的數字,但事實並非如此。你可能讓你的解析代碼有點不對,而且字段混淆了。

要跟蹤此問題,請使用代碼周圍的print語句查看未按預期工作的情況。您也可以使用pdb

1

我認爲,你的頭輸出是亂碼。顯然,它正在尋找一個數字,它找到一個字符串MSIE(可能是User-Agent的值)。

相關問題