![]() |
||||
![]() |
![]() |
![]() |
||
ブラウザでサイトを開くことなく、プログラムからHTMLソースを取得する方法です。
| 20 行目 | 変数を定義します。 |
| 23 行目 | オブジェクトのセットでエラーになっても無視します。 |
| 24 〜 27 行目 | オブジェクトをセットしています。 |
| 28 行目 | エラーを有効にしています。 |
| 29 〜 32 行目 | オブジェクトが作成出来なかった場合はメッセージを表示して終了します。 |
| 35 〜 40 行目 | URL を開きます。 36 行目がドメイン認証が必要な場合で、必要ない場合は 38 行目になります。 |
| 43 行目 | status でレスポンスコードが取得できます。 404 が戻ってきたらそのサイトは存在しないということになります。 これでサイトが有効か確認することができます。 |
| 46 〜 52 行目 | HTML ソースを取得しています。 ソースが Shift-JIS の場合と Unicode の場合で取得方法が異なります。 |
| 55 行目 | オブジェクトを解放しています。 |
| 58 行目 | 正常に終了したフラグを返しています。 |
関数の呼出
strRetVal に HTML ソースが戻り値として格納されます。
| 100 Continue | リクエストの先頭部分を受信したのでクライアントはリクエストの続きを送信してもよい |
| 101 Switching Protocols | サーバはクライアントの指示に従いプロトコルを変更する |
| 200 OK | リクエストは正常に処理された |
| 201 Created | 新しいURIが作成されたときにサーバから返される |
| 202 Accepted | リクエストは受け取られたが、すぐに処理の対象とはならない |
| 203 Non-Authoritative Information | エンティティヘッダの情報が本来のサーバが発信したものではない |
| 204 Not Content | エンティティボディが返されていない |
| 205 Reset Cotent | UAは使用されたフォームをクリアして、次のリクエストに備えるべきである |
| 206 Partial Content | サーバは要求されたサイズの部分的なデータを返した |
| 300 Multiple Choices | リクエストされたURIは2つ以上のリソースを有している |
| 301 Moved Permanenty | リクエストされたURIは永続的に移転している。Locationヘッダ中に移転先が記される |
| 302 Moved Temporarily | リクエストされたURIは一時的に移転している。Locationヘッダ中に移転先が記される |
| 303 See Other | リクエストされたURIは別のURIに存在する |
| 304 Not Modified | 指定日時以降にドキュメントが変更されていないことを示す |
| 305 Use Proxy Location | ヘッダで指定されるProxy経由でアクセスしなくてはならない |
| 306 - 未使用 | |
| 307 Temporary Redirect | リクエストされたリソースは一時的に移動している。一時的なリダイレクト先URIを示す |
| 400 Bad Request | クライアントのリクエストに文法エラーがあった |
| 401 Unauthorized | ユーザは認証されていないためリソースにアクセスできない |
| 402 Payment Required | 未使用 |
| 403 Forbidden | リクエストは何らかの理由で拒否された |
| 404 Not Found | 指定されたリソースは存在しない |
| 405 Method Not Allowed | クライアントの指定したメソッドが無効 |
| 406 Not Acceptable | リクエストされたデータはあるが、指定された形式と異なる |
| 407 Proxy Authentication Required | Proxyサーバが認証を要求している |
| 408 Request Time-Out | タイムアウトしたため接続が切断された |
| 409 Conflict | リクエストが他のリクエストと矛盾している |
| 410 Gone | リクエストされたURIは永久的にそのサーバから削除されてしまった |
| 411 Length Required | Contents-Lengthヘッダ指定がないと受け付けられないリクエストにLengthなしでリクエストした |
| 412 Precondition Failed | そのリクエスト中のIfヘッダ条件に偽が返された |
| 413 Request Entity Too Large | リクエストのエンティティが大きすぎて、処理できない |
| 414 Request Too Long | リクエストしたURLが長すぎて処理できない |
| 415 Unsupported Media Type | 未知の形式でリクエストされたため処理できない |
| 416 Requested Range Not Satisfiable | |
| 417 Expectation Failed | |
| 500 Internal Server Error | サーバ内部エラー。CGIの実行等になんらかのエラーが発生した |
| 501 Not Implemented | サーバに未実装の処理をリクエストされたためエラーが発生した |
| 502 Bad Gateway | 無効なレスポンスを受信した |
| 503 Service Unavailable | 一時的にサービスは利用できないでいるが、将来的には回復の予定であることを示す |
| 504 Gateway Time-Out | 408とにているが、サーバ側のタイムアウト |
| 505 HTTP Version Not Supported | 要求されたHTTPのバージョンをサーバは対応していない |
正確な定義はRFC2616を参照して下さい。