public static async Task <string> PostNewAsync(StorageFile image) { string result; string token = AccessToken.getAccessToken(); string host = BaiduApi.getUrl() + "?access_token=" + token; Encoding encoding = Encoding.Default; HttpClient client = new HttpClient(); //client.DefaultRequestHeaders.Add("Content-Type", "application/x-www-form-urlencoded"); string imageString = await toBase64Async(image); //str += "&disp_formula=true"; byte[] buffer = encoding.GetBytes(imageString); //client.DefaultRequestHeaders.Add("Content-Length", buffer.Length.ToString()); //StringContent content = new StringContent(buffer); List <KeyValuePair <string, string> > pairs = new List <KeyValuePair <string, string> >(); pairs.Add(new KeyValuePair <string, string>("image", imageString)); pairs.Add(new KeyValuePair <string, string>("disp_formula", "true")); FormUrlEncodedContent content = new FormUrlEncodedContent(pairs); content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/x-www-form-urlencoded"); var response = await client.PostAsync(host, content); //request.GetRequestStream().Write(buffer, 0, buffer.Length); //HttpWebResponse response = (HttpWebResponse)request.GetResponse(); //Stream stream = response.GetResponseStream(); //StreamReader reader = new StreamReader(stream, Encoding.Default); //result = reader.ReadToEnd(); result = await response.Content.ReadAsStringAsync(); return(result); }
public static async Task <string> PostAsync(StorageFile image) { string result; //string token = "24.5e94ae528427824fb5e03aaf8751a7ac.2592000.1592472357.282335-19946172"; string token = AccessToken.getAccessToken(); string host = BaiduApi.getUrl() + "?access_token=" + token; //string host = "https://aip.baidubce.com/rest/2.0/ocr/v1/formula?access_token=" + token; Encoding encoding = Encoding.Default; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(host); request.Method = "post"; request.KeepAlive = true; string base64 = await toBase64Async(image); String str = "image=" + base64; str += "&disp_formula=true"; byte[] buffer = encoding.GetBytes(str); request.ContentType = "application/x-www-form-urlencoded"; var handler = new HttpClientHandler(); request.ContentLength = buffer.Length; request.GetRequestStream().Write(buffer, 0, buffer.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream stream = response.GetResponseStream(); StreamReader reader = new StreamReader(stream, Encoding.Default); result = reader.ReadToEnd(); stream.Close(); response.Close(); return(result); }
static void Main(string[] args) { var _result = new BaiduApi().SEM(); Console.WriteLine(_result); #region 循环注册极光用户 //Console.WriteLine("输入开始的用户id,回车继续"); //string _minUserId = Console.ReadLine(); //Console.WriteLine("输入单次读取用户条数,回车开始读取用户数据"); //int _pageSize = Convert.ToInt32(Console.ReadLine()); ////最后一个用户id //string _lastUserId = string.Empty; //for (int i = 0; i < 10; i++) //{ // var _dt = Sales.GetUserDb(i, _pageSize, _minUserId); // Console.WriteLine("本次总读取用户{0}条", _dt.Rows.Count); // List<string> _list = new List<string>(); // for (int j = 0; j < _dt.Rows.Count; j++) // { // _list.Add(string.Format("t{0}", _dt.Rows[j]["user_id"])); // } // if (_dt.Rows.Count > 0) // { // _lastUserId = _dt.Rows[_dt.Rows.Count - 1]["user_id"].ToString(); // } // string _uids = string.Join(",", _list); // //try // //{ // // string _url = string.Format("http://1.t.93390.cn/txooo/salesv2/shop/Ajax/ShopOpenAjax.ajax/RegistJPush?uids={1}", _uids); // // Masir.MaLogHelper.GetLogger("ReadSalesUserDebug").Debug(string.Format("注册极光:{0}", _uids)); // // var _return = JObject.Parse(new WebClient().DownloadString(_url)); // // if (_return["success"].ToString() == "false") // // { // // Masir.MaLogHelper.GetLogger("ReadSalesUserServiceError").Error(string.Format("注册极光服务器返回异常:{0}", _uids)); // // Console.WriteLine("注册极光异常:{0}", _uids); // // break; // // } // // else // // { // // Console.WriteLine("注册极光成功:{0}", _uids); // // } // //} // //catch (Exception ex2) // //{ // // Masir.MaLogHelper.GetLogger("ReadSalesUserError").Error(string.Format("再次注册极光异常:{0}", ex2.Message), ex2); // // break; // //} //} //Console.WriteLine("本次大于【{0}】的用户注册极光结束,最后一个用户id【{1}】", _minUserId, _lastUserId); #endregion Console.ReadKey(); }
public static List <停车场信息> CreatePark(string xlsxFilename, string jsonFilename) { var records = new List <停车场信息>(); var templetefs = new FileStream(xlsxFilename, FileMode.Open, FileAccess.Read); var hssfworkbook = new XSSFWorkbook(templetefs); var sheet = hssfworkbook.GetSheetAt(0); var rfirst = sheet.FirstRowNum; var rlast = sheet.LastRowNum; //去掉第一条 for (int i = 1; i < rlast; i++) { var row = sheet.GetRow(i); var r = new 停车场信息(); r.City = BaiduApi.DefaultCity; r.Name = row.GetCell(1).StringCellValue; var address = row.GetCell(2).StringCellValue; //对于地址进行处理 //地址: 江门 鹤山市 广东省大雁山风景旅游区叠翠山庄 var addressinfo = address.Split(" "); address = addressinfo.Last(); if (address.StartsWith("广东省")) { address = address.Substring(3); } r.Address = address; records.Add(r); } foreach (var item in records) { //GEO信息取得 var loc = BaiduApi.GetGeoInfo(item.Address); item.lat = loc.lat; item.lng = loc.lng; } string json = JsonConvert.SerializeObject(records, Formatting.Indented); using (var sw = new StreamWriter(jsonFilename, false)) { sw.Write(json); sw.Close(); } return(records); }
private void player_OnOpenSucceeded(object sender, EventArgs e) { if (isTran) { int times = Convert.ToInt32(player.GetDuration() / 1000 / 7); //切视频 CaptionThread captionThread = new CaptionThread(times, video, null); //Thread thread = new Thread(captionThread.startCaption); Thread thread = new Thread(captionThread.startVideo); thread.IsBackground = true; thread.Start(); //百度api翻译 BaiduApi api = BaiduApi.getInstance(video, captionDic, times); Thread thread1 = new Thread(api.recoVideo); //Thread thread1 = new Thread(captionThread.startVideo); //thread1.Start(); thread1.IsBackground = true; thread1.Start(); } }
public static List <特色美食信息> CreateFood(string xlsxFilename, string jsonFilename, List <特色美食评论> Comments) { var records = new List <特色美食信息>(); var templetefs = new FileStream(xlsxFilename, FileMode.Open, FileAccess.Read); var hssfworkbook = new XSSFWorkbook(templetefs); var sheet = hssfworkbook.GetSheetAt(0); var rfirst = sheet.FirstRowNum; var rlast = sheet.LastRowNum; //去掉第一条 for (int i = 1; i < rlast; i++) { var row = sheet.GetRow(i); var r = new 特色美食信息(); r.City = BaiduApi.DefaultCity; r.Name = row.GetCell(0).StringCellValue; r.Address = row.GetCell(1).StringCellValue; r.Item = row.GetCell(2).StringCellValue.Split(",\n".ToCharArray()).Where(x => !string.IsNullOrEmpty(x)).Select(x => x.Trim()).ToArray(); if (r.Item.Length == 1) { var itemline = r.Item[0]; if (itemline.Split(" ").Length != 1) { r.Item = itemline.Split(" "); } else { if (itemline.Split("、").Length != 1) { r.Item = itemline.Split("、"); } } r.Item = r.Item.Where(x => !string.IsNullOrEmpty(x)).Select(x => x.Trim()).ToArray(); } r.Price = 0; if (row.GetCell(3).CellType == CellType.String) { var strPrice = row.GetCell(3).StringCellValue; if (string.IsNullOrEmpty(strPrice) || strPrice == "0") { r.Price = 0; } else { r.Price = int.Parse(strPrice.Substring(1)); } } else { if (row.GetCell(3).CellType == CellType.Numeric) { r.Price = (int)row.GetCell(3).NumericCellValue; } } records.Add(r); } templetefs.Close(); records = records.Distinct(new 特色美食信息()).ToList(); foreach (var item in records) { //GEO信息取得 var loc = BaiduApi.GetGeoInfo(item.Address); item.lat = loc.lat; item.lng = loc.lng; //评论 var c = Comments.Where(x => x.Name == item.Name).FirstOrDefault(); if (c != null) { //词云的制作 item.WordCloud = WordCloudItem.Create(c.Comments, 20); item.Comments = c.Comments.Take(50).ToList(); item.CommentCount = c.Comments.Count; } } string json = JsonConvert.SerializeObject(records, Formatting.Indented); using (var sw = new StreamWriter(jsonFilename, false)) { sw.Write(json); sw.Close(); } var FoodRankDict = new Dictionary <string, int>(); //美食排行榜 foreach (var r in records) { foreach (var i in r.Item) { if (!FoodRankDict.ContainsKey(i)) { FoodRankDict.Add(i, 0); } FoodRankDict[i]++; } } var FoodRankTuple = new List <(string, int)>(); FoodRankTuple = FoodRankDict.Select(x => (x.Key, x.Value)).ToList(); FoodRankTuple.Sort((x, y) => y.Item2 - x.Item2); //Print一下看看 foreach (var item in FoodRankTuple.Take(20)) { System.Console.WriteLine(item.Item1 + ":" + item.Item2); } //平均消费 var PriceAvg = records.Where(x => x.Price != 0).Average(x => x.Price); System.Console.WriteLine("平均消费:" + PriceAvg); return(records); }
public static List <宾馆酒店信息> CreateHotel(string xlsxFilename, string jsonFilename, int LastColIdx, List <宾馆酒店评论> Comments) { var records = new List <宾馆酒店信息>(); var templetefs = new FileStream(xlsxFilename, FileMode.Open, FileAccess.Read); var hssfworkbook = new XSSFWorkbook(templetefs); var sheet = hssfworkbook.GetSheetAt(0); var rfirst = sheet.FirstRowNum; var rlast = sheet.LastRowNum; //去掉第一条 for (int i = 1; i < rlast; i++) { var row = sheet.GetRow(i); if (row.GetCell(0) == null) { continue; } var r = new 宾馆酒店信息(); r.City = BaiduApi.DefaultCity; r.Name = row.GetCell(0).StringCellValue; if (string.IsNullOrEmpty(r.Name)) { continue; } if (row.GetCell(1) != null) { r.Grade = row.GetCell(1).StringCellValue; } var addr = row.GetCell(2).StringCellValue.Split("\n"); r.Distract = ""; r.Address = ""; if (addr.Length == 3) { r.Distract = addr[1].Trim(); r.Address = addr[2].Trim(); } if (addr.Length == 2) { r.Distract = addr[0].Trim(); r.Address = addr[1].Trim(); } r.ServiceTel = ""; r.ServiceFax = ""; if (row.GetCell(3).CellType == CellType.String) { r.ServiceTel = row.GetCell(3).StringCellValue; } if (row.GetCell(3).CellType == CellType.Numeric) { r.ServiceTel = row.GetCell(3).NumericCellValue.ToString(); } if (r.ServiceTel == "联系方式") { r.ServiceTel = ""; } r.ServiceTel = r.ServiceTel.TrimEnd("纠错".ToArray()).Trim(); if (r.ServiceTel.Contains("传真")) { r.ServiceFax = r.ServiceTel.Substring(r.ServiceTel.IndexOf("传真")); r.ServiceTel = r.ServiceTel.Substring(0, r.ServiceTel.IndexOf("传真")); r.ServiceFax = r.ServiceFax.TrimStart("传真".ToArray()).Trim(); } if (!string.IsNullOrEmpty(r.ServiceTel)) { r.ServiceTel = r.ServiceTel.TrimStart("电话".ToArray()).Trim(); } //Cell4是联系人,一模一样的 r.Description = row.GetCell(LastColIdx - 1).StringCellValue.Trim(); r.Price = 0; if (row.GetCell(LastColIdx).CellType == CellType.String) { var strPrice = row.GetCell(LastColIdx).StringCellValue; if (string.IsNullOrEmpty(strPrice) || strPrice == "0") { r.Price = 0; } else { int p; if (int.TryParse(strPrice.Substring(1), out p)) { r.Price = p; } } } else { if (row.GetCell(LastColIdx).CellType == CellType.Numeric) { r.Price = (int)row.GetCell(LastColIdx).NumericCellValue; } } records.Add(r); } templetefs.Close(); records = records.Distinct(new 宾馆酒店信息()).ToList(); int cnt = 0; foreach (var item in records) { //评论 var c = Comments.Where(x => x.Name == item.Name).ToList(); if (c.Count != 0) { item.WordCloud = WordCloudItem.Create(c.Select(x => x.Comment).ToList(), 20); item.CommentCount = c.Count; item.ScoreCnt = c.Where(x => x.Score != 0).Count(); if (item.ScoreCnt != 0) { item.Score = System.Math.Round(c.Where(x => x.Score != 0).Average(x => x.Score), 2); } item.Comments = c.Select(x => x.Comment).Take(50).ToList(); } cnt++; //GEO信息取得 var loc = BaiduApi.GetGeoInfo(item.Address); item.lat = loc.lat; item.lng = loc.lng; } string json = JsonConvert.SerializeObject(records, Formatting.Indented); using (var sw = new StreamWriter(jsonFilename, false)) { sw.Write(json); sw.Close(); } return(records); }