2015-08-28 42 views
0

我在玩python的HTMLParser,并在打印出空白行时遇到问题。Python HTMLParser打印出空白行

from HTMLParser import HTMLParser 
import urllib2 
class MyHTMLParser(HTMLParser): 
def handle_data(self, data): 
    print "Encountered some data :", data 

# instantiate the parser and fed it some HTML 
url = 'http://www.ngccoin.com/price-guide/us/flying-eagle-cents-pscid-16-desig-ms' 
req = urllib2.Request(url, headers={'User-Agent' :"Magic Browser"}) 
response = urllib2.urlopen(req) 
html = response.read() 

parser = MyHTMLParser() 
parser.feed(html) 

我的问题是,当它打到一个数据部分时,它只打印出新行和实际数据。我的输出看起来很像:

Encountered some data : 

Encountered some data : Official Grading Service of 
Encountered some data : 

Encountered some data : 

Encountered some data : 

我应该如何让它忽略只有一个新行的那些行?

回答

2

简单地把它忽略只是一个新行的那些行:

def handle_data(self, data): 
    if data == '\n': 
     return 
    print "Encountered some data :", data 

或者,有它忽略任何数据只包含空格的:

def handle_data(self, data): 
    if not data.strip(): 
     return 
    print "Encountered some data :", data 
+0

我试图忽略与'\ n什么'最初并没有成功,但'data.strip()'解决方案像一个魅力。谢谢 – Dommol