csvファイルが存在するかどうか確認するためif節でheadを使っています
$data_hokkaido = "http://denkiyoho.hepco.co.jp/data/juyo_hokkaidou …
if (head "$data_hokkaido" ){
use LWP::Simple;
$content = get($data_hokkaido);
}
こうするとエラーになるのでperlチェックをしてみたところ
String found where operator expected at test.cgi line 393, near "head "$data_hokkaido""
(Do you need to predeclare head?)
と警告が出ました
if節を外して
$data_hokkaido = "http://denkiyoho.hepco.co.jp/data/juyo_hokkaidou …
use LWP::Simple;
$content = get($data_hokkaido);
とするとエラーは出ず、問題なくデータ取得できるので、headに原因があるのだと思いますが、具体的に何が悪いのでしょうか?
ちなみに何のデータを取得しているかと言いますと、電力各社の電気予報のデータで、
エラーが出るのは北海道電力ので、同じようにファイルがダウンロードされる形式になっている関西電力部分
$data_kansai = "http://www.kepco.co.jp/yamasou/juyo1_kansai.csv";
if (head "$data_kansai" ){
use LWP::Simple;
$content = get($data_kansai);
}
ではエラーは出ません
理由がお分かりの方ぜひ教えてください。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
関西電力の方でエラーが出ないというのは間違いですね。
それだけ抜き出して試してみてください。同じエラーになると思います。
で、何が問題かというと、LWP::Simpleモジュールを読み込む前に、そこで定義されている
head関数を使っていることです。use文をファイル冒頭に移動すれば問題ないと思います。
ありがとうございます。
use LWP::Simple;はgetにだけ必要とばかり思っておりました
それで、北電と関電以外もデータを取っていたのですが、北海道電力の次に東北電力のデータを取っており、そこだけif節を入れるのを忘れていて、そこでuse LWP::Simple;を記述しており、その後に関西電力があったので、その記述が有効だったため関西電力の方ではエラーにならなかったようです
勉強になりました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- その他(プログラミング・Web制作) Python - Excel で Webからデータを連続取得したいのですが エラーが出ます 1 2023/07/06 20:08
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- その他(プログラミング・Web制作) pythonのこのエラーがわかりません 3 2022/11/16 14:54
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- C言語・C++・C# 10個の実数に対する降順ソート結果を出力するプログラムを作りたいのですが、以下のプログラムをどう直せ 1 2022/07/09 22:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
printfの%eで指数部分の桁数を...
-
Cのプログラムがどうしても動き...
-
C#でのswitch文
-
int型(2バイト)データの分割
-
C言語の構造体にてバブルソート...
-
linuxのシェルでファイル名に先...
-
離散フーリエ変換のプログラム...
-
c言語での wavファイルの編集(...
-
MySQLに登録すると文字化け
-
c言語 配列から数字だけをint型...
-
エクセルVBA:日付データの変換...
-
レコードセット内容の参照
-
OrderTEXT
-
micropythonコード 修正
-
10Mバイトて文字数に すると何...
-
COBOLのCOMP形式について
-
エクセルシート名の制限を変更...
-
UTF-8で5~6バイトになる文字コ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
printfの%eで指数部分の桁数を...
-
エクセルVBA:日付データの変換...
-
int型(2バイト)データの分割
-
c言語の多次元配列で1から100ま...
-
C#でのswitch文
-
【Excel VBA】10進数を2進数に...
-
途中経過も表示するプログラム
-
CreateProcessでの環境変数の設...
-
pythonでDBのカラム名で取得し...
-
C言語についてです! 同じ年の...
-
linuxのシェルでファイル名に先...
-
c言語 配列から数字だけをint型...
-
c言語での wavファイルの編集(...
-
matlabのソースコードをpython...
-
ビットデータのチェック方法
-
10個の実数に対する降順ソート...
-
python 気象データの取得
-
C言語の構造体にてバブルソート...
おすすめ情報