タグ

ブックマーク / www.f3.dion.ne.jp/~element (5)

  • WinHTTP ライブラリで Web スクレイピング(1)~ GET 編~

    概要 Web から情報を取得したいというニーズは、いまや当たり前のものになりました。 対象サイトが Web API を提供している場合、話は簡単です。しかし Web API を提供しているサイトばかりではありません。というより、数で言うなら Web API を提供していないサイトの方が圧倒的多数です。そんなサイトの中にほしい情報があった場合は、否応なく Web ページを直接取得して情報を解析・抽出する必要があります。 原始的と言うか地道と言うか、とにかくこのベタなやり方を称して「Web スクレイピング」(文脈によっては単に「スクレイピング」)と呼びます(海外では Web harvesting と呼ぶ場合も多いですが、なぜか日ではこっちはほとんど用いられないようです)。 Access VBA で Web スクレイピングを行う方法については、サイトにすでに関連トピックが二つ存在します。 W

  • Web ページをダウンロードする方法~ MSXML 編~ | YU-TANG's MS-Access Discovery

    概要 Web ページの情報にアクセスするニーズは昔から存在しましたが、かつては、それは API を駆使する大仕事でした。 その後 WinSock コントロールや WinInet コントロールのような ActiveX が登場し、VB レベルでも何とかなるようにはなりましたが、それでもなお『お手軽』と呼ぶには程遠い状態で有り続けたのです。 状況が変わり始めたのは WebBrowser コントロールが出現した頃からで、フォーム上に Web ページを表示できて HTML ソースにもアクセス可能な WebBrowser コントロールは、今では最も使用頻度の高い ActiveX コントロールの一つになっています。 以下は WebBrowser コントロールを使用して HTML ソースを取得する方法について解説したサイトの一例です。 T'sWare Access Tips #267 > ホームページのH

  • 外部テキストファイルとの接続方法

    Shell 関数 機能 外部テキストファイルを開くだけで何も操作をしなくてよい場合は、もっとも簡単なのがこの Shell 関数です。 Call Shell("NOTEPAD C:\Temp.txt", 1) Shell 関数自体は別にテキストファイルを操作するための関数ではなく、単にアプリケーションを呼び出すだけで、呼び出し先はメモ帳でも秀〇でも Excel でも何でもかまいません。上記例ではコマンドライン オプションでテキストファイルのフルパスを渡すことによって、メモ帳に起動と同時にテキストファイルを開かせています。 なおテキストファイルのフルパス中に半角スペース文字が混じる場合は、下記のようにパスをさらに二重のダブル クォーテーションで括る必要があります。 Call Shell("NOTEPAD ""C:\Documents and Settings\YU-TANG\デスクトップ\Te

  • DOS コマンドの実行結果をVBAで取得する方法

    概要 Access VBA と DOS コマンド。 昨今ではあまり馴染みのない組み合わせです。 主要 DOS コマンドは VBA に移植されていますし、VBA に移植されていないものは API や COM の Shell オブジェクト経由で呼べるので、「なんで今さら DOS コマンド?」という感覚が一般的かもしれません。 しかし、中には DOS コマンドの方が簡単に実行できるケースも有ります。 たとえば ping を打ってネットワーク上の任意のホストが生きているか確認したい場合や、あるフォルダの配下から、サブフォルダの中も含めて、特定の拡張子を持つファイルの一覧を取得したい場合などが該当します。 これらはいずれも VBA で実装可能ではありますが、複雑な再帰処理や API との連携が必要です。 一方 CUI であるコマンド インタープリタ上からであれば、たった 1 行の DOS コマンドを

  • [ファイルを開く] ダイアログを表示する方法

    概要 今回は、Access 2000 以降で [ファイルを開く] ダイアログを表示する方法です。 .....あっ、今アナタ、こう思いましたね? [ファイルを開く] ダイアログ? FAQ だね、FAQ。 Access 2000 には [ファイルを開く] ダイアログを表示する機能は無いんだから。 アレでしょ、Developer 版に付属しているコモンダイアログ コントロールを使うか、Excel 経由で GetOpenFileName メソッドを呼び出すか、さもなくば Windows API を使うっていう。 あ、それとも Access 2002 から追加された新機能の FileDialog メソッドを使う方法かな? でもそれだと Access 2000 では使えないから、やっぱり最初の 3 つの方法でしょ。 そんなの他のサイトにもたくさん載ってるし、毎週どこかの掲示板に上がってくる定番ネタじゃ

  • 1