如何解决typeError: 此选项不支持 unsetopt()
class ContentCallback:
def __init__(self):
self.contents = ''
def content_callback(self,buf):
self.contents = self.contents + buf
def exploitdb_search(name):
if len(name) != 0:
query = str(name) + ' ' + 'site:https://www.exploit-db.com/'
for data in search(query,num_results=1):
if "https://www.exploit-db.com/exploits" in data:
x = ContentCallback()
c = pycurl.Curl()
c.setopt(c.URL,'{}'.format(data))
c.setopt(c.WRITEFUNCTION,x.content_callback(data))
c.perform()
c.close()
print(t.content)
解决方法
c.WRITEFUNCTION
选项的值应该是一个函数。您正在传递调用函数的结果,即 None
,因为 content_callback()
不返回任何内容。将选项设置为 None
被解释为试图取消设置该选项,这在此选项中是不允许的。
您应该去掉函数的参数列表,以便传递对函数的引用。
c.setopt(c.WRITEFUNCTION,x.content_callback)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。