• ベストアンサー

SWIFTでWEBページの情報を表示

SWIFTを使って、特定のWebページの情報を取得したいです。 htmlを取得しその後XMLのタグ内からデータを取得という形なのでしょうか? 初心者の為実装方法に悩んでおります。 実現方法をご教示ください。サンプルなどあれば幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • harawo
  • ベストアンサー率58% (3742/6450)
回答No.1

https://www.youtube.com/watch?v=U_LTllqV8OI 詳細は、書籍「たのしいSwiftプログラミング」で。アプリ版もあります。 処理は大きく分けてふたつになります。 (1) HTTP経由で、ウェブページのデータをダウンロード。テキストとして取得。 (2) HTML(XML)解析をして、データ成形。 (1)は、上に紹介した書籍を参考になさるか、「NSURLSession」をキーワードにして、検索してみてください。 (2)は、「NSXMLParser」をキーワードにして、検索してみてください。

関連するQ&A

  • WordでWebページを作成するときに・・・

    WordでWebページを作成したときに現れる、filelist.xmlは何なのでしょうか? その中のo:Fileタグは具体的にどういう働きをするのでしょうか?(o:が特定のXMLスキーマを指定していることは分かるのですが・・・)

  • asp.netでxml→webパーツを表示させる方

    現在、asp.netの勉強をしています。 xmlから項目を読み込んで、その情報を元にWebページのテキスト等の入力項目、 つまりwebパーツを表示、非表示をさせる処理ができないかとやっていますが、 実装方法がわからず困ってます。 【xmlファイル】 <?xml version="1.0" encoding="utf-8" ?> <messages> <message id="1" disp="0">名前(姓)</message> </messages> <messages> <message id="2" disp="1">名前(名)</message> </messages> 上記のようなxmlファイルを例にご説明致しますと、XmlDocumentで読み込み、 disp="0"の場合は名前(姓)のラベルと入力できるテキストボックスの2つが表示されず、 disp="1"の場合は名前(名)のラベルと入力できるテキストボックスの2つ表示されるという 処理を実装したいと考えています。 簡単に言うと、xmlの設定値からhtmlで設定したwebパーツのon、offを行う処理が したいということです。 ※html側にもid等を設定する必要があるのでしょうか? 上記のような処理方法がありましたら、教えて頂けますでしょうか。 参考になるサンプルプログラムまたはサンプルページがありましたら 教えて頂けば幸いです。 ちなみに言語はC#で行っております。 以上、宜しくお願い致します。

  • webページが正常に表示されません

    最近、幾つかのwebページが正常に表示されず、htmlタグがテキスト形式で表示されるということが起きます。 そのように表示されるページは特定のページです。 こうしたページを正常に閲覧する方法はあるでしょうか。 ブラウザはIEとOpera両方で確認しています。 また、知人に聞くと、そのページは正常に見られるとのことです。

  • Swiftでhtmlを全てParseできない

    SWIFTを使用してあるサイトをNSXMLParserでパースしたところ opening and ending tag mismatchが出て途中で解析が出来なくなってしまいます。 XMLが不正なためかとは思いますが外部サイトの為手を入れることは出来ません。 このエラーを無視して処理する方法はないでしょうか?

  • htmlで記述されたWebページの解析と情報取得

    特定のWebページを取得し、その情報の一部を利用したいと思っています。 そのページはXML形式ではなく一般的なhtml形式です。 今はやり方がわからない為、ブラウザに一旦受けさせて ブラウザの機能でパースしてもらってそれを利用しています。 しかし、スマートではないのでこのやり方から卒業したいと思っています。 (そもそもAjaxじゃないし) これを(一旦html文字列を取得して)何かのJavaScriptライブラリ等を利用して 「getElementsByName…」等を利用できる形のオブジェクトに 変換したいと思っています。 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.open('GET', …); … htmlStr = xmlhttp.responseText; // ←これを使う? htmlDom = hoge.parse(htmlStr); htmlDom = xmlhttp.responseHTML; // ←こんな感じのがあれば最高 alert(htmlDom.getElementsByName("…")[0].value); google提供のライブラリに「GXml.parse」というものがあり、 XML文字列をXML DOM 形式にパースするという機能があります。 これのhtml版はないものかと思っているしだいです。 例えば、以下のページ(どちらでもいい)から為替レートを取得したい場合などです。 外為 レート - Infoseek マネー http://money.www.infoseek.co.jp/MnForex/fxrate/ 外為 米ドル/円 - Infoseek マネー http://money.www.infoseek.co.jp/MnForex/fxdetail/?fx=F1001 ※今回の質問は「どこでもいいから為替レートを取得する方法」ではありません。  知りたいのはhtmlのパース方法です。為替はあくまでも例です。 (Webブラウザにレンダリングさせないで) html文字列をparseする方法。(JavaScriptライブラリの使用可) ※html文字列からでなくともいい これを教えてください。よろしくお願いします。

    • ベストアンサー
    • AJAX
  • 特定のページからの誘導のみWebサイトを表示

    Webサイトを作成しているのですが、特定のページからの誘導のみ特定のWebサイトを表示する方法はありますでしょうか? WebサイトAからリンク ⇒ WebサイトBを表示 上記のような流れを現在作成しております。 WebサイトBのURLを直接タイプして表示させない方法、 WebサイトBのURLを知られない方法などでも問題ございません。 Web初心者で、html以外はあまり詳しくないのですが、お知らせいただけますと幸いです。

    • ベストアンサー
    • HTML
  • ウェブページの枠とかはどうやって作るんですか?

    ウェブページの超初心者です。(作るの) 前まではウェブページを作るためのウェブページを使ってやっていましたが、今回はHTMLタグを使って作ろうと思います。 多少できるようになりましたがこのページのようにオレンジ色の枠や灰色の枠の作り方がわかりません。(作り方というか入力&タグ名) まだ初心者で何もわからないので変な質問してスマソ・・・。 回答よろしくお願いします。

  • swiftでカメラの文字認識を使いたいです

    swift初心者です 現在、カメラによる文字認識を行う技術の取得をしたいと思い、ネットで検索をしまして、 http://blog.isana.net/2014/08/ios.html 上記のサイトを参考にサンプルコードを作成しています。 しかし、上記サイトはobjective-Cの記述方法のようで、ViewController.mやViewController.hがViewControler.swiftに統合されているswiftでは、上記サイトのソースコードはどのように記述したらよいのでしょうか。 もしくは、他に比較的簡単にカメラでの文字認識を行える方法があればご教授願いたいです。 回答よろしくお願いします

  • WEBページ内のリンクを削除するスクリプト

    プログラミング初心者です。 ウィキペディアのようなWEBページ内のテキストの文字列にリンクが貼ら れているページのリンクを全て無効にしたいと思っています。 実装はFirefoxのアドオンのgreasemonkeyで行いたいと思っているのですが、 可能でしょうか? ページ内のリンクタグ <a href=" ~ ">文字列</a> を削除することは 可能でしょうか? できれば、上記のことを実現する方法やソースのコードを紹介して頂きたく 思います。

  • 『XML ページを表示できません』と出てしまいます。

    お世話になります。 ご存知の方がいらしたらご教示お願いします。 本日Wordpress2.1をインストールさせていただきました。 2.07ではとても良好に動いておりましたがバージョンアップ しましたら『XML ページを表示できません』と出てしまいます。 詳細は下記のとおりです。 ----------------------------------------------------- XML ページを表示できません XSL スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。 -------------------------------------------------------------------------------- 次のタグは、閉じられていません: rss, channel リソース 'http://www.*****.***/?feed=rss2' の実行エラーです。 初心者で申し訳ありません。 何をどう直したら良いか全く理解ができません。 うまくバージョンアップできていなのでしょうか? 申し訳ございません。ご教示いただけませんでしょうか? どうぞ宜しくお願い申し上げます。