この記事を参考にwikipediaから特定のカテゴリに属するタイトルを持ってくるコードを書いています。
記事をコピペしてunity仕様に書き換えてrestSharpを導入しても以下のコードで次のエラーが発生します。
エラーの解消方法をご教授願いたいです。
よろしくお願いします。
unityのバージョンは2020.3.13f1です。
エディタはvisual studio2019(16.103)です。
c#
1using UnityEngine; 2using System.Collections; 3using System.Collections.Generic; 4 5using RestSharp; 6using RestSharp.Authenticators; 7 8using System; 9using Newtonsoft.Json.Linq; 10 11 12public class WikipediaManager : MonoBehaviour 13{ 14 void Start() 15 { 16 var titles = GetTitles("Category:日本語の姓"); 17 //File.WriteAllText("日本語の姓.txt", string.Join("\r\n", titles), Encoding.UTF8); 18 foreach (var title in titles) 19 { 20 Debug.Log(title); 21 } 22 } 23 24 private static List<string> GetTitles(string cmtitle) 25 { 26 var titles = new List<string>(); 27///////////////////////////////////エラー1 28 var client = new RestClient("https://ja.wikipedia.org/w/"){ ThrowOnAnyError = true }; 29 string cmcontinue = null; 30 do 31 { 32 var request = new RestRequest("api.php", (Method)DataFormat.Json) 33 .AddParameter("action", "query") 34 .AddParameter("list", "categorymembers") 35 .AddParameter("cmprop", "title") // タイトルのみ取得 36 .AddParameter("format", "json") 37 .AddParameter("cmlimit", "500") 38 .AddParameter("cmtitle", cmtitle); 39 40 if (cmcontinue != null) 41 request.AddParameter("cmcontinue", cmcontinue); 42//////////////////////////////////////////////////////エラー2 43 var response = client.Get(request); 44 var o = JObject.Parse(response.Content); 45 titles.AddRange(o["query"]?["categorymembers"].Select(x => x["title"].ToString())); 46 cmcontinue = o["continue"]?["cmcontinue"]?.ToString(); 47 } while (cmcontinue != null); 48 49 return titles; 50 } 51 52}
・エラー1
ThrowOnAnyErrorに波線で「RestClientにThrowOnAnyErrorの定義がありません」
・エラー2
.Getに波線で「重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態
エラー CS1061 'RestClient' に 'Get' の定義が含まれておらず、型 'RestClient' の最初の引数を受け付けるアクセス可能な拡張メソッド 'Get' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足していないことを確認してください 」。
オブジェクトブラウザでGetの文字列含むメソッドを持つ名前空間を探しましたが、候補が多すぎてどれだかわかりませんでした。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。