- ベストアンサー
httpクライアントにてURLをプログラム内に記入する方法
- httpクライアントを利用したプログラムで、URLをプログラム内に記入して実行する方法について教えてください。
- 質問文章のプログラムの一部を記入して、URLをプログラム内に記入する方法について説明してください。
- httpクライアントを使ってURLをプログラム内に記入して実行する方法について詳しく教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
なるほど。それなら何とかなります。 手順としては、 (1)起動パラメータからURLを取得して加工している部分を抹消します。 /* スキーム名を取得する */から/* WinSockの初期化を行う */の手前までを消してください。 (2)直接定義に書き換えます。 例えば、http://dir.yahoo.co.jp/Entertainment/に接続するとすると。 char svName[BUFSIZE]; /* サーバのドメイン名 */ char html[BUFSIZE]; /* 取得するページのパス */ を char svName[] = "dir.yahoo.co.jp": char html[] = "/Entertainment/"; です。 これで動くはずです。問題とか、コンパイルエラーとか、疑問があればまた聞いてください。あとは使わなくなった変数を消しといてくださいね。
その他の回答 (4)
- zwi
- ベストアンサー率56% (730/1282)
あっセミコロンとコロンを打ち間違えました。 char svName[] = "dir.yahoo.co.jp"; char html[] = "/Entertainment/"; が正解です。
お礼
ありがとうございます! エラーもなく無事にコンパイルと実行ができました。 本当にありがとうございます!
- zwi
- ベストアンサー率56% (730/1282)
>別のプログラムと併用して、HTMLの内容をテキストに書き出してその結果を利用するプログラムを作成予定です。 と言うことは、ホームページのターゲットは特定しないんでしょうか? 日本のホームページがターゲットなら文字コードは、SJIS/JIS/EUC/UTF-8などの種類を自動判定しないとまともにテキスト化もできません。 それとHTMLをどこまで解析するかで難易度も変わってきますね。文字列の処理は苦手なC言語でHTMLワードの検索を行うのはかなり困難なので、正規表現ライブラリの利用も考えなくてはいけません。リンク先を探し出すことさえ、標準ライブラリではかなり面倒です あと残り何日なのかが分かりませんが、そんな難しい課題なんでしょうか? 差し支えない範囲で課題を内容を教えてください。 あえて難しい挑戦をしている可能性もありますよ。
補足
ホームページは特定しています。 今の状態でテキスト化は上手くできているようなので(一応ですが)そこは大丈夫です。 今のところ、プログラム1・プログラム2・プログラム3がありまして、(以下pr1・pr2・pr3と書きます) pr1は主なプログラム。簡単に言うと、色々なことを話すプログラムのようなものです。 pr2は今回質問しているプログラム。htmlのソースを受信します。 pr3はpr2で受信して情報を記入したテキストの一部を別のテキストに書き出すプログラム (例えば、pr2で書き出したテキストが「こんにちは、私は鈴木です」とあるとすると、pr3で「鈴木」を抜き出して別のテキストに書き出すようなもの) です。 最終的に1つのプログラムにまとめるので、今回のpr2のように実行する際にURLを打ち込まないといけない状態だとまとめれないので困っている状態です。 ちなみに現在pr1,pr2,pr3の動作はエラーも起きず上手く動いています。 あと約3週間あります!おそらく難しいと言うより私の知識不足が大きいと思われます。。
- zwi
- ベストアンサー率56% (730/1282)
このプログラムを改造して何をしたいのでしょうか? どこかのホームページのHTMLの内容をテキストとして表示したいだけでしょうか?それならブラウザでやった方が早いですよ。 コード変換も無いですし、改行コードも気にしてませんし、そのまま使うには色々と問題がありそうですが。 URLをプログラムに埋め込むのは難しくありませんが、それ以上のこととなると初心者には難しすぎると思いますが。
補足
別のプログラムと併用して、HTMLの内容をテキストに書き出してその結果を利用するプログラムを作成予定です。 問題が色々とあるのですか。 夏の期間の課題なのですが初心者にはやはり辛いですね。。。
- shirayukix
- ベストアンサー率43% (90/207)
自分で作ったんじゃないんですか? どこまで自分で試してみたのか教えてください。
補足
どこかのサイトにあったhttpクライアントを使って ちょっとだけいじってるだけです。 上のほうにある”スキーム名を・・・” のところをいじってもコンパイルできなかったです。
お礼
本当にありがとうございます! エラーなくコンパイル、実行できたので大丈夫でした。