Python2.7,处理htmlpar时出现ValueError

2024-04-18 14:34:19 发布

您现在位置:Python中文网/ 问答频道 /正文

第一次使用HTMLParser模块。尝试在输出上使用标准字符串格式,但它给了我一个错误。以下代码:

import urllib2
from HTMLParser import HTMLParser

class LinksParser(HTMLParser):
    def __init__(self, url):
        HTMLParser.__init__(self)
        req = urllib2.urlopen(url)
        self.feed(req.read())

    def handle_starttag(self, tag, attrs):
        if tag != 'a': return
        for name, value in attrs:
        print("Found Link --> {]".format(value))


if __name__ == "__main__":
    LinksParser("http://www.facebook.com"

产生以下错误:

^{pr2}$

Tags: nameimportselfurlifinitvaluedef
3条回答
print("Found Link  > {]".format(value)) 

应改为:

^{pr2}$

你用了方括号而不是大括号。在

此格式字符串看起来已损坏:print("Found Link > {]".format(value))。您需要将其更改为print("Found Link > {key}".format(key = value))。在

有几个问题

  • handle_starttag中的print语句应缩进
  • 在最后一行,你缺少右括号
  • handle_starttag中的print语句中,应该使用{0},而不是{}

相关问题 更多 >