自动使用终端打开网站并记住 cookie 的脚本

自动使用终端打开网站并记住 cookie 的脚本

有什么方法可以编写一个脚本,以一分钟的间隔自动打开 URL,并记住旧的 cookie?

它必须从 ssh 运行,并非始终连接。

答案1

新答案:

我制作了纯文本版本的脚本,您可以在screen或 cron 的帮助下轻松地在后台运行。

对于长时间运行的进程,Screen 是更好的选择。使用 screen,即使在从 ssh 注销后,您也可以简单地在远程服务器上运行相同的会话。

首次启动screen:$ screen

运行elinks 'Yoursite'。管理登录或任何其他您想要影响 cookies 的操作。退出。在 中运行我的脚本screen

让我们使用键盘快捷键 CTRL+a+d 或 ctrl+alt+d 断开您的屏幕会话。它将返回到命令行。现在退出您的 ssh 会话并再次通过 ssh 连接系统并执行以下命令以运行旧的屏幕会话。

$ 屏幕-r

脚本如下,我已经在网络邮件上对其进行了测试以测试 cookie,一切正常,登录一次并保持登录状态重新启动脚本。

#!/bin/bash

while :
do
    elinks 'yandex.ru' &
    sleep 50s
    pkill -u "$(id -un)" elinks
    echo  "elinks killed, press ctrl-C to cancel loop. sleep 10s."
    sleep 10s
done

注意:repo 中的 elinks 版本不支持 javascript。如果您自行构建,当前版本将在满足依赖项的情况下支持 javascript。

更新:我测试了纯文本浏览器linkslynx。首先,它们不记得会话之间的 cookie,其次 - 我无法完全测试它,因为它不允许提交表单,这可能是由于 javascript 造成的。(使用网络邮件进行测试,以查看我在第二次浏览器运行时是否保持登录状态)

相关内容