답변:
정말 재미있는 문제입니다.
ændrük의 대답은 아마 효과가있을 것이라고 확신하지만 데스크탑 소프트웨어에 의존하는 것이 네트워크 가용성을 관리하게하는 것은 약간 불리합니다.
파이썬의 Mechanize 라이브러리로 놀아 보는 것이 좋습니다 . 다음을 통해 리포지토리에서 설치할 수 있습니다.
sudo apt-get install python-mechanize
그런 다음 스크립팅을 받으십시오. 제출하는 페이지의 구조를 찾아 시작해야합니다. 제출 양식과 제출을 위해 입력해야하는 필드를 찾아야합니다. 일단 당신이 그것을 알고 나면, 간단한 작은 양식 파서와 제출자를 작성하는 것만큼이나 간단합니다. 기계화는 모든 무거운 작업을 수행합니다. 다음 은 양식에 대한 문서에서 적응 한 빠른 예입니다 .
import sys
from mechanize import ParseResponse, urlopen, urljoin
# replace this with the actual login page
# you'll need to do some research
uri = "http://theloginpage.com/"
response = urlopen(uri)
forms = ParseResponse(response, backwards_compat=False)
form = forms[0]
print form
form["username"] = "your username"
form["username"] = "password"
# form.click() returns a mechanize.Request object
# (see HTMLForm.click.__doc__ if you want to use only the forms support, and
# not the rest of mechanize)
print urlopen(form.click()).read()
시스템 작동 방식에 따라 이것으로 충분할 수 있습니다. 연결을 설정하는 동안 세션을 유지하기 위해 쿠키 문제를 해결해야 할 수도 있지만 기술적으로 말하면 쿠키를 요구 해야하는 이유는 없습니다.
그런 다음 이것을 네트워킹 시스템에 연결하면 호출됩니다. 코드를로드하면 /etc/network/if-up.d
작동하지만 로그인이 작동하는 핫스팟에 있는지 확인하기 위해 코드 앞에 코드를 추가하는 것이 좋습니다.