我定义了一个继承自HTMLParser
MyHTMLParser.py:
from HTMLParser import HTMLParser
import urllib
# create a subclass and override the handler methods
class MyHTMLParser(HTMLParser):
def __init__(self, url):
HTMLParser.__init__(self)
self.url = url
self.__html = ""
self.data = urllib.urlopen(url).read()
self.feed(self.data)
def handle_starttag(self, tag, attrs):
print "Encountered a start tag:", tag
def handle_endtag(self, tag):
print "Encountered an end tag :", tag
def handle_data(self, data):
self.__html += data
def myMethod(self):
print self.__html
parser = MyHTMLParser("http://gushiwen.org")
parser.myMethod()
当我运行python MyHTMLParser.py
(os是windows)时,它会抛出错误:
parser.myMethod()
AttributeError: MyHTMLParser instance has no attribute 'myMethod'
为什么?python版本是2.7。
答案 0 :(得分:2)
你有...保存你的编辑吗?这是一个常见的错误。
答案 1 :(得分:0)
我已经解决了这个问题,它是由缩进引起的,如果我插入空格而不是Tab,它可以工作,也许是我的IDE的错误。