public Grab ( string user, int count = 10 ) : List |
||
user | string | |
count | int | |
return | List |
public void grab_test() { var graber = new InstagramGraber(); var results = graber.Grab("burberry"); foreach (var result in results) { Console.WriteLine(result); } }
public void Execute(CommandContext context) { var parameters = context.CommandParameter.Split('|'); if (parameters.Length == 0) throw new ArgumentNullException(); var user = string.Empty; var count = 0; var sendToEmail = false; switch (parameters.Length) { case 1: user = parameters[0].Trim(); break; case 2: user = parameters[0].Trim(); count = Convert.ToInt32(parameters[1].Trim()); break; case 3: user = parameters[0].Trim(); count = Convert.ToInt32(parameters[1].Trim()); if (parameters[2].Trim() == "1") sendToEmail = true; break; } SendComment(context, string.Format("#PCң����# ��ʼΪ������Instagram���û� {0} ����Ƭ��ͼƬ�п��ܺܶ࣬�����ĵȺ���", user)); var graber = new InstagramGraber(); var images = graber.Grab(user, count); var downDirectory = string.Format("{0}\\Instagram\\{1}", context.DownloadPath, user); if (!Directory.Exists(downDirectory)) Directory.CreateDirectory(downDirectory); var downPara = new DownloadParameter(); var files = new List<string>(); foreach (var image in images) { var index = image.LastIndexOf("/"); var fileName = image.Substring(index); downPara.FilePath = string.Format("{0}\\{1}", downDirectory, fileName); downPara.Url = image; if(File.Exists(downPara.FilePath)) continue; NetworkUtility.DownloadFile(downPara); files.Add(downPara.FilePath); } var page = files.Count/100 + 1; if(sendToEmail) { for (var i = 0; i < page; i++) { var filesToSend = files.Take(100).Skip(i*100).ToArray(); SendPhotoByEmail(context, filesToSend); } } SendComment(context, string.Format("��Ƭ������ɡ�����һ��������{0}����Ƭ��", images.Count)); }