ChromeでWebスクレイピング

参考ページ
VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説
ExcelのVBAとSeleniumBasicで簡単スクレイピング!シネコンのサイトから上映中の映画タイトルを取得してExcelシートを作るまで。 | ふーたらのページ

IEでは表示がぐちゃぐちゃになるページがあったので、ChromeでWebスクレイピングを検討してみる。
それにはSeleniumのインストールが必要。

インストールするものは下記。
・SeleniumBasic v2.0.9.0のインストール
・ChromeDriver 87.0.4280.88のインストール

ChromeDriverはchromedriver.exeを下記のフォルダにコピーする必要がある。
しないと実行時エラー33が出る。
「C:\Users\(ユーザー名)\AppData\Local\SeleniumBasic」
※AppDataは隠しフォルダ

VBAで参照設定「SeleniumTypeLibrary」にチェック。

Accessでクエリの結果が何も表示されないとき

ルックアップウィザード、クエリデザインのリレーションが原因かも

  • クエリデザインで、拾えていないと思われるテーブルを削除してみて、原因となっているテーブルを探す
  • クエリでテーブルを追加したときに、別々のテーブルで同じ名前のフィールド名(例えば「ID」など)に勝手にリレーションが設定される。勝手に設定されるリレーションを削除してやると良いときがある。
  • ルックアップウィザードで設定される参照元の値は、参照先の主キーになる。参照先の主キーが「ID」であれば、参照元のデータ型は数字になる。あまりIDをデータにしたくなければ参照先の主キーを変更する必要がある。

Amazon API

Amazonが提供しているAPIは大きく2種類ある。

  • PA-APIProduct Advertising API):アフィリエイター向け、動作が不安定。
  • MWS-API ( Marketplace Web Service-API):出品者向け、動作が安定。大口アカウントが必要。

使用するには事前の申請が必要。

ADOとDAO

参考ページ:■T'sWare Access Labo #23 〜DAOとADOを比較する〜

学習したこと。
VBAでAccessDBファイルにアクセスする方法としてDAOとADOがある。

ADOのほうが新しいのでADOをメインに使うのがよさそう。

参考ページ:ADOやDAOの参照設定~マイクロソフトアクセス(Access)活用法(メルマガ)
学習したこと。

  • ADOとDAOで構文が違う。
  • 以前はマイクロソフトは、DAOを推奨していましたが、現在は、ADOの方が良いかも。
  • DAOにしかない機能もありますからそのときは、DAOを使用。
  • VBAAccess操作するには参照設定が必要。

SQL文の基本

参考ページ:SQLとは?基礎知識と具体例をわかりやすく解説!
学んだこと。
SQLの種類は下記。

  1. DML:データ操作言語:データベースに対してデータを追加・更新・削除などを行う。
  2. DDL:データ定義言語:テーブルに対して作成・削除したり、設定を変更など行う。
  3. DCL:データ制御言語:DMLDDLの利用を制御するためのSQL命令文

まずSQL文で学ぶべきはDMLDDLはDB管理者になってから。

  • SELECT(データの検索)
  • INSERT(データの追加)
  • UPDATE(データの更新)
  • DELETE(データの削除)

SELECT文の例

  • すべてのレコードを取得
SELECT * FROM テーブル名
  • ID、氏名の列のみ取得
SELECT ID,氏名 FROM テーブル名
  • IDが5以上のレコードを取得
SELECT * FROM テーブル名 WHERE ID >= 5

INSERT文の例

  • 列名を指定してデータを追加
INSERT INTO 人事テーブル(氏名, 部) VALUES('坂本りゅうま', '営業部')

UPDATE文の例

  • 条件を満たすレコードを更新
UPDATE 人事テーブル SET 内線番号=124 WHERE 内線番号=123

DELETE文の例

  • 条件を満たすレコードを削除
DELETE FROM 人事テーブル WHERE  ID=5