関連問題になっていない:個人的なプロジェクトとしてSet session to scrape pageクッキーを送受信するようにカール用いるが、予想される応答
を、私はRESTfulなAPIとして、それを提供するために、私の大学のコースカタログをこすりしようとしています。
URL1:https://duapp3.drexel.edu/webtms_du/
URL2:https://duapp3.drexel.edu/webtms_du/Colleges.asp?Term=201125&univ=DREX
URL1に行くには、URL2のために必要とされているクッキーを設定します。しかし、応答は私が私のブラウザで見るものと異なるを取得
curl -c recd url1
curl -v -b recd url2
:私は正常に受信して、このようなクッキーを送っています。 curl
ではなく、専攻のリストで、それは私は多分、彼らがユーザーエージェントをチェックした考え出したので、私はこれを試してみました
<FONT COLOR=red size=5> The lists of subjects are not available online for the selected term at this time.</FONT><FONT COLOR=red size=5> Please check back again later.</FONT>
を持つページを取得しながら、基本的には、私のブラウザは、私の専攻のリストを示していうまく:
curl -b recdcookies --user-agent "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" https://duapp3.drexel.edu/webtms_du/Colleges.asp?Term=201125&univ=DREX
しかし、同じ予期しない応答。
ブラウザとカールの出力が異なる原因は何ですか? curl -v
までは、1つのクッキーしか設定されていません。それはhttps
ページであり、別の引数をcurl
に追加する必要があるためですか?
2番目のリクエストで最初のリクエストのCookieを含めていますか? –
@ nikc.orgです。最初は私がいなかったとき、返されたページには「無効な引数...」というメッセージがありました。今度は復帰しますが、コースのリストがないので、クッキーがうまくいっていると思います。 – xbonez
おそらく愚かな質問ですが、コマンドラインでURLを引用符で囲みましたか?アンパサンドは、引用符で囲まれていない(バックグラウンドで実行されている)ときに特別な意味を持ちます。私はコースリストをうまく取得できます。 –