コード例 #1
0
        public static async Task GetBody_null_null()
        {
            var url = "http://gooasdasgle.com";

            var doc = await NetUtills.GetHtmlDoc(url);

            Assert.IsNull(doc);
        }
コード例 #2
0
        public static async Task GetBody_notNull_notNull()
        {
            var url = "http://google.com";
            var doc = await NetUtills.GetHtmlDoc(url);

            Console.WriteLine(doc.Text);
            Assert.IsNotNull(doc);
        }
コード例 #3
0
ファイル: BoardHandler.cs プロジェクト: he305/sharpbot
        private static async Task <List <Thread> > GetThreads(string board)
        {
            var threads = new List <Thread>();

            var uriBuilder = new StringBuilder(DvachUrl);

            uriBuilder.Append($"/{board}/threads.json");
            var url = uriBuilder.ToString();

            if (!(await NetUtills.GetJsonUrl(url) is JObject array))
            {
                return(threads);
            }

            var allThreads = new List <Thread>();

            foreach (var thread in array["threads"])
            {
                var num       = thread["num"].ToString();
                var subject   = thread["subject"].ToString();
                var threadUrl = $"{DvachUrl}{board}/res/{num}.html";

                if (string.IsNullOrEmpty(subject))
                {
                    subject = "None";
                }

                var files   = new List <string>();
                var comment = HttpUtility.HtmlDecode(thread["comment"].ToString());
                var score   = float.Parse(thread["score"].ToString());

                allThreads.Add(new Thread(
                                   num,
                                   subject,
                                   files,
                                   comment,
                                   score,
                                   threadUrl
                                   ));
            }

            Logger.Info($"Got all threads on {board}, num: {allThreads.Count}");
            return(allThreads);
        }
コード例 #4
0
ファイル: BoardHandler.cs プロジェクト: he305/sharpbot
        private static async Task <List <string> > GetFiles(string board, string num)
        {
            var files = new List <string>();

            var uriBuilder = new StringBuilder(DvachUrl);

            uriBuilder.Append($"/{board}/res/{num}.json");
            var url = uriBuilder.ToString();


            if (!(await NetUtills.GetJsonUrl(url) is JObject array))
            {
                return(files);
            }

            foreach (var file in array["threads"][0]["posts"][0]["files"])
            {
                files.Add(DvachUrl + file["path"]);
            }

            Logger.Info($"Got all files in {num} on boards: {board}");
            return(files);
        }