Linux服务器连接校园网

Linux服务器连接校园网

流程

  • 安装图形化界面
  • 安装python及相关包
  • 安装浏览器
  • 安装浏览器驱动
  • 编写脚本

安装图形化界面

之前也想尝试通过terminal模拟发送登录请求,但是比较尝试了几种方式都失败了,还是安装了图形化界面,安装图形化界面的教程很多就不介绍了。

安装python及selenium包

这个包是用来模拟控制浏览器的

用anaconda 或者 pip都能装

安装浏览器

在服务器上安装浏览器,这里用的Firefox,Chrome 也行selenium有对应的方法。

安装浏览器驱动

Firefox驱动下载地址

https://github.com/mozilla/geckodriver/releases

image-20221118140134192

下载对应操作系统的即可

chmod +x geckodriver #添加可执行权限
sudo mv geckodriver /usr/bin/ # 移动到系统环境路径下

编写脚本

# connect_net.py
import argparse

from selenium import webdriver
import time

def login_with_userInfo(user:str,pwd:str):
    options = webdriver.FirefoxOptions()
    options.add_argument('--no-sandbox')
    options.add_argument('--disable-dev-shm-usage')
    options.add_argument('--headless')
    driver = webdriver.Firefox(options=options)

    driver.get(url='https://login.hdu.edu.cn/')
    time.sleep(2)
    usernameInput = driver.find_element(value='username')
    # usernameInput = driver.find_element_by_id('username')
    usernameInput.clear()
    usernameInput.send_keys(user)
    passwdInput = driver.find_element(value='password')
    # usernameInput = driver.find_element_by_id('username')
    passwdInput.clear()
    passwdInput.send_keys(pwd)
    submitBtn = driver.find_element(value='login-account')
    submitBtn.click()

if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument('--username', default=None, type=str,
                        help='The file of the hyper parameters.')
    parser.add_argument('--password', default='train', type=str,
                        help='The phase of module.')
    args_parser = parser.parse_args()
    login_with_userInfo(user=args_parser.username, pwd=args_parser.password)

connect_net.sh

#!/usr/bin/env bash
USERNAME=""
PASSWORD=""
python connect_net.py --username ${USERNAME} --password ${PASSWORD}

运行脚本

bash connect_net.sh

总结

逻辑比较简单,用python调浏览器,get到用户名和密码框往里填值,之后调用登录的click就行。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值