Google 検索結果の解析中にインターフェイス変換エラーが発生しました
問題:
プロジェクトのビルド中serpwow API を使用して Google 検索結果を解析すると、エラーが発生します:
panic: interface conversion: interface {} is []interface {}, not map[string]interface {}.
このエラーは、「organic_results」フィールドへのアクセス中に、予想されるデータ型と実際のデータ型が一致しないことを示唆しています。
原因:
このエラーは、「organic_results」がコードで想定されているマップではなく、API からの JSON 応答内の配列であるために発生します。
解決策:
エラーを解決するには、コードで「organic_results」を配列として扱い、その要素を反復処理して目的のデータを抽出する必要があります。修正されたコードは次のとおりです。
<code class="go">for _, item := range response["organic_results"].([]interface{}) { fmt.Sprintf("%v", item.(map[string]interface{})["title"]) }</code>
このコードは、「organic_results」配列を反復処理し、キーと値のペアのマップである各結果の「title」フィールドにアクセスします。
以上がGoogle 検索結果を解析する際のインターフェース変換エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。