2012-11-07 65 views
-1
Traceback (most recent call last): 
    File "NinjaWarzBot.py", line 354, in <module> 
    stats = comm.init() 
    File "C:\Users\Administrator\Desktop\ninja warz bot\NinjaWarzLib.py", line 33, 
in init 
    mf.seek(m.start()+len(cookieKey)) # reset file cursor 
AttributeError: 'NoneType' object has no attribute 'start' 
Press any key to continue . . . 

def init(): 
    cookieDBFilename = os.path.join(os.environ['USERPROFILE'], "AppData/Local/Google/Chrome/User Data/Default/Cookies") 
    cookieKey = "kongregate.ninjawarz.brokenbulbstudios.comPHPSESSID" 
    f = open(cookieDBFilename, 'r+b') 
    mf = mmap.mmap(f.fileno(), 0) 
    mf.seek(0) # reset file cursor 
    m = re.search(cookieKey+'\w+', mf) 

    mf.seek(m.start()+len(cookieKey)) # reset file cursor 
    global _sessionId 
    _sessionId = mf.read(m.end() - m.start() -len(cookieKey)) 
    mf.close() 
    f.close() 

    return getMyStats() 

这是我的错误和代码。我很困惑,为什么我得到这个错误。有人可以帮帮我吗?这令人沮丧。AttributeError:'NoneType'对象没有属性'开始'

+0

提供清晰的信息。当你得到这个错误?你想要实现什么? – arulmr

+0

似乎're.search(cookieKey +'\ w +',mf)'返回'None'。 – iMom0

+0

我运行脚本时出现此错误。 @ iMom0我该如何解决这个问题? – Laszki

回答

4

你忘了检查你的正则表达式实际上是否匹配任何东西。如果没有,那么从适当的方法返回的值将是None

0

在执行.start()之前,您可以打印re.search(cookieKey +'\ w +',mf),以便您可以查看是否实际搜索了某些内容。然而,如果你有情侣字符串匹配你的文字,re.search只返回一个对象