1

私は機械化でいくつかのものを自動化しています。サイトにログインし、ログイン中にページに移動する作業中のプログラムがありますURLError

URLError: <urlopen error [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond>

プログラムを再起動するか、試行を再試行すると、うまくいきます。Chrome で同じサイトにアクセスすると、何度ログインしてもタイムアウトしません。

これの原因は何ですか?機械化が理想的ではないことをしているようです。さまざまなサイトでも同様のパターンが発生しました-URLError実際には接続の問題がない場合.

編集:これを行うと-すぐに再試行すると、多くの場合機能しますが、次に行うことなどで再び失敗することにも気付きました.

last_response = ...
for attempt in (1, 2):
    try:
        self.mech.select_form(nr=0)
        self.mech[self.LOGIN_FORM_DATA[1]] = self.user
        self.mech[self.LOGIN_FORM_DATA[2]] = self.password
        resp = self.mech.submit()
        html = resp.read()
        resp.close()
    except mechanize.URLError:
        self.error("URLError submitting form, trying again...")
        self.mech.set_response(last_response) #reset the response 
        continue
    break
4

0 に答える 0