WinINet関数を使いVCプログラムしています。
HTMLをダウンロードしてきて、情報を解析しているのですが。
InternetOpen
InternetOpenUrl
↓
InternetReadFile
手順で、HTMLの所得はできるのですが、
ユーザー認証がいるサイトの情報を取る方法がわかりません。
(例えば:mixi,facebookなど)
WinINet関数を使用してサイトにログインしてから、
指定のURLのHTMLを取得する様な感じだと思っているのですが、やり方がわかりません。
参考になる、サイト等知っている方がいましたら、教えて頂けると嬉しいです。
No.2ベストアンサー
- 回答日時:
mixiだとBASIC認証じゃなくてフォームへ……ですね。
http://www.hiramine.com/programming/windows/http …
とか参考に……なりますかねぇ。
APIの使用順などは参考になると思いますが……。
フォームでログインするタイプだと、おそらくHTTPリクエストはPOSTになります。
# 実際のところはそのページのソースを確認するべきですが。
HTTPリクエストヘッダに
Content-Type: application/x-www-form-urlencoded
を追加して、HTTPリクエスト ボディでユーザー名やパスワードなどを送信することになります。
# どこにPOSTするのか…とか、HTTPリクエスト ボディに入れる必要のあるデータなどはページによる…ということに。
また、セッション管理などでCookieを使っていたりする場合は、その後の通信でもCookieの送受信なども必要になるでしょう。
VMWare上のUSVNへのログインだと…下記のような感じに……
POST /usvn/login/ HTTP/1.1
Host: 192.168.61.134
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:15.0) Gecko/20100101 Firefox/15.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ja,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://192.168.61.134/usvn/login/
Cookie: PHPSESSID=umhpt5qvd5dge8h026jkl5tpn7
Content-Type: application/x-www-form-urlencoded
Content-Length: 83
login=admin&password=123456789&submit=%E3%82%B5%E3%83%96%E3%83%9F%E3%83%83%E3%83%88
参考のサイト本当にありがとうございます。
サイトのサンプルを流用して、少し改造を加え、
欲しい情報の取得ができました。
本当に助かりました。ありがとう御座いました。
No.1
- 回答日時:
「InternetOpenUrl 認証」辺りで検索すると見つかるんじゃないでしょうか。
InternetOpenUrl()の第3引数と第4引数で追加のヘッダ(HTTPリクエストヘッダ)が指定できます。
# HttpSendRequest()でもいいのでしょうが……
http://www.studyinghttp.net/auth
とか……。
>ユーザー認証がいるサイトの情報を取る方法がわかりません。
>(例えば:mixi,facebookなど)
SSLだとダメですが…WireSharkなどで実際のパケットを覗く…というのもアリかと思います。
Wr5様
アドバイスありがとうございます。
アドバイスに書いてあってURlの内容 HTTPアクセス認証について、サイトの方読みました。
ですが、私の力量不足なのか、問題の解決にいたっていまっせん。
HttpSendRequestなどを使用した、mixi等に対して認証(ログイン?)をする
イメージでいいのでしょうか?
あつかましいと思いますが、簡単なサンプルかなにかを教えていただけると嬉しいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- HTML・CSS 別サイトのHTML内にある情報を自動取得して、自分のサイトに組込む方法を教えてください。 例えば、Y 1 2023/06/15 08:09
- インターネット広告・アフィリエイト アフェリエイトサイト 作成について 5 2022/05/13 21:31
- 格安スマホ・SIMフリースマホ SMS認証用の電話番号が欲しい 6 2022/06/12 18:21
- 就職 情報学科やIT企業の関係者の方にお聞きしたいです。 2 2023/08/01 08:55
- その他(行政) e-govで必要な電子証明書について 1 2022/08/20 22:56
- ハッキング・フィッシング詐欺 Airbnb セルフチェックの宿の個人確認について 1 2022/05/08 10:12
- YouTube SMS認証が出来なくて乗っ取られたアカウントを取り戻せません。 2 2023/04/02 15:29
- その他(セキュリティ) 匿名チャットアプリのトラッキングについて。顔写真や個人情報の漏洩はあるのか。 2 2023/03/28 00:00
- HTML・CSS HTMLタグのあるCSVファイルを利用する方法 4 2023/03/19 14:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ftpでのネットワークバイトオー...
-
ヘッダのinclude順
-
perlでHTTP Request Headersの...
-
HTTPヘッダの取得方法
-
リストコントロールの列幅を固...
-
TCPヘッダのチェックサム算出方法
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
VBA。複数のChangeイベントをま...
-
毎○曜日って、使いますか?
-
アンケートなどの1日1回の投...
-
エクセルで毎月第2週日の水曜日...
-
Quantifier follows nothing in...
-
require文が実行できない
-
apacheでPerl CGIが作動せず、5...
-
お台場合衆国の混んでない時間...
-
週2回のペースって だいたい何...
-
クライアントのIPとマシン名を...
-
ディレクトリパスの取得について
-
[Excel] ある日の曜日が当月の"...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでExcelのヘッダーに文字列+...
-
[C#]ListView一覧表示時の幅設...
-
リストコントロールの列幅を固...
-
ヘッダのinclude順
-
AccessVBAで「このフィールドに...
-
HTTPヘッダの大きさ
-
LinuxでRTPヘッダを作りたいの...
-
バイナリファイルのアップロー...
-
Content-type: text/htmlが表示...
-
SpreadDesignerの列ヘッダ
-
TCPヘッダのチェックサム算出方法
-
file_get_contents でリダイレ...
-
あれれ、クッキーが機能しませ...
-
SSL環境でオートコンプリートを
-
関数ヘッダ?
-
ログイン後・・・
-
メールをPDF化する際に、ヘッダ...
-
perlでHTTP Request Headersの...
-
C言語でのOS判断について
-
cookieを表示させたい。(ブラウ...
おすすめ情報