在Heroku上运行Python脚本

时间:2013-08-09 18:07:12

标签: python heroku dependencies

我有一组用python编写的scraper,我正试图在Heroku上托管。我已将repo推送到heroku,它将开始运行,但退出时我在本地环境中从未遇到过错误。

当我致电p = Legislator(name=name, district=district)时,名称和地区都是字符串,我得到TypeError: __init__() takes at least 3 arguments (2 given)

立法者和人都包含在我的脚本所依赖的包中,这两个包都在requirements.txt中指定 这可能与virtualenv有关吗?

这是立法者的构造者:

    def __init__(self, name, post_id, party=None, chamber=None, **kwargs):
       super(Legislator, self).__init__(name, **kwargs)
       self.post_id = post_id
       self.party = party
       self.chamber = chamber
       self._contact_details = []

和Person的构造函数

   def __init__(self, name, **kwargs):
       super(Person, self).__init__()
       self.name = name
       self.biography = None
       self.summary = None
       self.birth_date = None
       self.death_date = None
       self.image = None
       self.gender = None
       self.links = []
       self.other_names = []
       self.extras = {}
       self._related = []
       self.contact_details = []

       for k, v in kwargs.items():
           setattr(self, k, v)

1 个答案:

答案 0 :(得分:2)

立法者提出论据:

selfnamepost_idparty=Nonechamber=None**kwargs

你给了它

<Legislator instance>name=namedistrict=district

然后你没有给它一个post_id参数 - 那是第三个缺失的参数。