2016-04-07 20 views
0

私はPython、Mechanizeでスクリプトを作成しました。これは特定のWebページに自動的に登録されます。TypeError:geturl()は1つの引数(2が与えられます)を受け取ります

コード:

import mechanize 

br = mechanize.Browser() 

response = br.open("https://arkhamnetwork.org/community/register") 

br.addheaders = [("User-agent","Mozilla/5.0")] 

gitbot = br.open("https://arkhamnetwork.org/community/register") 

br.select_form(nr=1) 

br.set_all_readonly(False) 

br.form.set_value("test", nr=0) 

br.method = "POST" 

response = br.submit() 

print response.geturl('http://arkhamnetwork.org/community/register/register') 

私はスクリプトを実行するたびに、私はこのエラーを取得:

TypeError: geturl() takes exactly 1 argument (2 given)

問題がどうあるべきか?

+1

インスタンスで呼び出すことで自分と他の引数を提供しています。そのため、タイプミスでインスタンス化されています。私はこのモジュールについて良いドキュメントを見つけることができませんが、私はパラメータとして自己だけを取ると思います。 – Morishiri

+0

問題を解決するには何が必要ですか? – ShellRox

+2

'print response.geturl()'を試してください – snakecharmerb

答えて

0

geturl()メソッドの使用方法を説明しますいくつかの(かなり初歩的な)ドキュメントhereがあります:一般的に

geturl(self)

Get URL of current document.

はあなたのエラーはあなたを伝えるとき、あなたは1つのあまりにも多くの引数を渡しているので、それはしばしばですオブジェクトのインスタンスメソッドが最初のパラメータとして暗黙的にselfを渡しているという事実を忘れてしまいます。

関連する問題