示例#1
0
        private void RunTask(IExecutorDriver driver, TaskInfo taskInfo)
        {
            driver.SendTaskRunningStatus(taskInfo.task_id);

            var url = Encoding.UTF8.GetString(taskInfo.data);
            var imageFileName = RunRendering(taskInfo.task_id, url);

            SendRenderResultMessage(driver, url, imageFileName);
            driver.SendTaskFinishedStatus(taskInfo.task_id);
        }
示例#2
0
        private static async Task RunTask(IExecutorDriver driver, TaskInfo taskInfo)
        {
            driver.SendTaskRunningStatus(taskInfo.task_id);

            var url = Encoding.UTF8.GetString(taskInfo.data);

            var htmlContent = await GetUrlContent(url);
            if (htmlContent != null)
            {
                var links = ExtractLinks(htmlContent);
                links = links
                    .Select(x => x.ToLower())
                    .Distinct(StringComparer.CurrentCultureIgnoreCase);

                if (links.Any())
                    SendCrawlResultMessage(driver, url, links.ToArray());
            }

            driver.SendTaskFinishedStatus(taskInfo.task_id);
        }