Bash

是否可以使用 wget 在同一伺服器上多次登錄?

  • April 23, 2022

目的是同時輸入不同的帳戶。對於lynx,這可以使用帶有*-cfg=~/file*參數的每個帳戶的文件。

wget有一個*.wgetrc*文件,可以配置:

cookies = on
load_cookies = ~/cookies.txt
save_cookies = ~/cookies.txt

但與lynx不同的是,您無法選擇使用多個配置文件的設置來呼叫它,它只是在wget使用同一伺服器的單個 cookie 啟動時載入。

我使用下面的腳本來創建和維護 cookie,而不需要*.wgetrc文件,但由於某種我不知道**的原因,只有.wgetrc*才能成功。**

#!/bin/bash
LOGIN='login=Account&pass=12345678'
   wget -qO- --save-cookies cookies.txt \
       --keep-session-cookies \
       --body-data="$LOGIN" \
       --method=POST \
       http://example.net/?sign_in=1
# after login
wget -qO- --load-cookies cookies.txt \
       http://example.net/user

根據這些資訊,我問;_wget 是否能夠從同一伺服器上的多個帳戶登錄?如果是,如何?

Lynx完全有能力做到這一點,但我不想使用它。

在此處輸入圖像描述

您可以單獨為每個 wget 呼叫指定,而不是將 cookie 載入並保存在配置文件.wgetrc中,--load-cookies filename並且--save-cookies filename.

這似乎是你需要的。--keep-session-cookies當cookie說“退出程序時刪除我”時,也許您還想明確忽略。

通過搜尋“cookie”可以很快查找到此資訊man wget,以防萬一您認為我知道諸如所有命令行標誌之類的東西wget:)

引用自:https://unix.stackexchange.com/questions/700079