0

私はこれを機能させることができないようです。誰かが私を正しい方向に向けることはできませんか? プロンプトを表示せずに値を入力すると機能しますが、これを行うとエラーが発生します。

username1 = raw_input('Enter Username:\n')
password = raw_input('Enter Password:\n')
r = requests.get("https://linktoasp.net/",auth=HttpNtlmAuth("domain\\%s",password),cookies=jar) % (username1)  

エラー:

トレースバック (最新の呼び出しが最後): ファイル "attend_punch.py​​"、32 行目

r = requests.get("https://linktoasp.netserver/homeportal/default.aspx",auth=HttpNtlmAuth("domain\\%r",password),cookies=jar)

% (username1) TypeError: サポートされていないオペランド タイプ %: 'Response' および 'str'

4

3 に答える 3

4

代わりにこれを試すことができます

auth = HttpNtlmAuth("domain\\%s" % username1, password), cookies = jar) 
于 2012-12-24T23:12:38.883 に答える
3

おそらく必要なものは次のとおりです。

r = requests.get(
        "https://linktoasp.net/",
         auth=HttpNtlmAuth("domain\\%s" % username1,password),cookies=jar)

で文字列補間を行う%には、%との値が文字列の直後に続く必要があります。

"domain\\%s" % username1

行の後半に来るのではなく:

HttpNtlmAuth("domain\\%s", ...) % username1
于 2012-12-24T23:13:02.067 に答える
3

Pythonでは、%シンボルには2つの意味があります。

  • intを他のintで除算する余りを与えるモジュロ演算子。これは通常、2つの数値に使用されます。
  • プレースホルダーを実際の値に置き換えるために文字列の後に続く文字列フォーマット演算子。それはあなたが望むものですが、文字列の直後に配置していないので、Pythonはそれをモジュロ演算子として解釈し、どのオブジェクトにも定義されていないため(int 通常のみ)、その例外を発生させます。
于 2012-12-24T23:14:45.677 に答える