APIでのデータ取得のノウハウにつきまして


お世話になります。
現在APIを読み込み、データベースへ挿入をするプログラムを作っているのですが、いくつか気になる点があります。

APIの仕様上、取得したいデータが50件ずつしか一度に取得できないため、プログラムでページを指定して読み込む形(APIのURLの末尾にp=1,p=2...という形で)にしていますが1万件などと取得するデータが膨大なとき、200回APIを叩く必要があり、取得までに大変時間がかかるほか、途中で挿入に失敗しているようです…。

(API側では検索結果1万件であるのに挿入作業完了後のデータベースの行数は9500行など)

(1)このようなデータ挿入の欠落を防ぐ方法はありますでしょうか?

(2)読込時間が長いため、下記のサイトを参考に読込中にプログレスバーを表示させたいと考えておりますが、デフォルトでは「画像ファイル」の読込みのみ対応しているようでここでphpファイルを指定することは可能でしょうか?

http://p.tl/IRnr
(img/DSC00001.JPGの箇所)

始終質問ばかりで申し訳ございません。
どうぞよろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2012/11/14 09:49:27
  • 終了:2012/11/21 09:50:03

回答(2件)

id:yu3ho7 No.1

yu3ho7回答回数2ベストアンサー獲得回数02012/11/14 21:29:35

1、先ず取得出来ていないという事はエラーが起こっているのでmysql等のエラーログを確認して取得出来ない原因を追求した方が良いと思います。

2、これは出力するページのサイズが重いとき等に使うものなのでサーバーサイドの処理が重い時には使えないと思います。
見せ方だけで良いのでしたら読み込みボタンを押したタイミングでローでディング画像等をjavascriptで表示させるだけで出来ます。

id:nakedfeels No.2

nakedfeels回答回数9ベストアンサー獲得回数32012/11/14 23:15:22

(1)このようなデータ挿入の欠落を防ぐ方法はありますでしょうか?

短時間に API へアクセスを繰り返していないでしょうか?アクセス制限に引っかかっており、サーバーがエラーを返しているかもしれません。
今わかっている情報だけでは原因がわからないので、実際に API にアクセスしているプログラムを貼り付けると有効な回答が得られるかと思います。

(2)読込時間が長いため、下記のサイトを参考に読込中にプログレスバーを表示させたいと考えておりますが、デフォルトでは「画像ファイル」の読込みのみ対応しているようでここでphpファイルを指定することは可能でしょうか?

画像ファイルを指定している箇所はURLを指定しているだけなので、任意のURLを記述できます。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません