0

我正在尝试学习python中的类:

#!/usr/bin/env python
# *-* coding: utf-8 *-*

import urllib2
from BeautifulSoup import BeautifulSoup as bs

class Crawler:

    def visit(self, url):
        self.request = urllib2.Request(self.url)
        self.response = urllib2.urlopen(self.request)
        return self.response.read()

if __name__ == "__main__":
    x = Crawler()
    print x.visit("http://google.com/")

当我尝试开始收到错误时:

sigo@sarch ~/sources $ python test.py 
Traceback (most recent call last):
  File "test.py", line 16, in <module>
    print x.visit("http://google.com/")
  File "test.py", line 10, in visit
    self.request = urllib2.Request(self.url)
AttributeError: Crawler instance has no attribute 'url'

我究竟做错了什么?

4

1 回答 1

5

你说self.urlwhich 是指 Crawler 类的url属性,它不存在。您只需要使用它,url因为这是您的visit()函数参数中的变量名称。

于 2011-11-21T21:50:50.810 回答