web-dev-qa-db-ja.com

FONアカウントを使用してBTWiFiログインを自動化する

私はBritishTelecomのWifiホットスポットのユーザーです。サービスは良好ですが、しばらく操作がないとログオフし、ユーザー名とパスワードの入力を求められます。

長期的には本当に迷惑です。

ログインシステムをリバースエンジニアリングしてPython/Bash/Perlスクリプトを作成した人はいますか?

または、これらの種類のことを行う一般的な方法はありますか?

4
sscarduzio

これをスクリプトとして保存し、10分ごとに実行します。上部にユーザー名とパスワードを追加することを忘れないでください!

#!/bin/bash

# CONF

DBG=true
RELOG_UNAME=usernamehere
RELOG_PASSW=passwordhere

# END CONF

IS_LOGGED_IN=$(wget "https://www.btopenzone.com:8443/home" --timeout 30 -O - 2>/dev/null | grep "accountLogoff")

if [ "$IS_LOGGED_IN" ]

then
  [[ $DBG ]] && echo "currently logged in. Nothing to do.."

else
  [[ $DBG ]] && echo "It's not logged in.. Will log in!"
  OUT=$(wget -qO- --post-data "USERNAME=$RELOG_UNAME&PASSWORD=$RELOG_PASSW" "https://btwifi.portal.fon.com/remote?res=hsp-login&HSPNAME=FonBT%3AGB&WISPURL=https%3A%2F%2Fwww.btopenzone.com%3A8443%2FfonLogon&WISPURLHOME=https%3A%2F%2Fwww.btopenzone.com%3A8443&VNPNAME=FonBT%3AGB&LOCATIONNAME=FonBT%3AGB")
  ONLINE=$(echo $OUT | grep youre_online )
  if [ "$ONLINE" ]
  then
    [[ $DBG ]] && echo "You're online!"
  else
    [[ $DBG ]] && echo "Could not login :("
  fi
fi
2
MrBeanzy