TypeError:' NoneType'对象不可调用python

时间:2015-04-03 01:27:36

标签: python beautifulsoup

我有错误

File "logins3", line 17, in <module>
    my_inputs = soup.findall('input')
TypeError: 'NoneType' object is not callable

我的代码

# extract the token

soup = BeautifulSoup(response.content)
my_inputs = soup.findall('input')

for input in my_inputs:
    print input.name + input['value'] #is here 

信息

<input type="hidden" name="return" value="ovL2FuaW1lZGlnaXRhbG5ldHdvcmsuZZXgucGhwL2Nvbm5leGlvbg==" />
    <input type="hidden" name="8d900dda34d7a3d37252b4a3c8" value="1" />

我需要这个令牌来创建我的脚本,我不知道如何修复它

TY

2 个答案:

答案 0 :(得分:1)

这是一个错字。

您打算使用find_all()代替findall()


仅供参考,它在AttributeError处没有失败,因为BeautifulSoup中的点符号具有特殊含义 - soup.findall基本上是soup.find("findall")的快捷方式。换句话说,它试图找到名称为findall的元素,失败并返回None。这就是你'NoneType' object is not callable的方式。

答案 1 :(得分:1)

您需要在_

中的a之前使用soup.findall
my_inputs = soup.find_all('input')

OR

>>> my_inputs = soup.findAll('input')
>>> for in_put in my_inputs:
        print in_put.name , in_put['value']


input ovL2FuaW1lZGlnaXRhbG5ldHdvcmsuZZXgucGhwL2Nvbm5leGlvbg==
input 1