private List <UserExtended> GetGroupMembersOneByOne(int startPosition, int endPoition, string groupName, VkApi api, UsersFields fields) { var usersChunk = new List <User>(); for (var i = startPosition; i <= endPoition; i++) { var param = new GroupsGetMembersParams() { Offset = i, GroupId = groupName, Sort = _getMembersSort, Fields = fields, Count = 1 }; try { var u = api.Groups.GetMembers(param).FirstOrDefault(); if (u != null) { usersChunk.Add(u); } } catch (Exception e) { Console.WriteLine(e.Message); } } var extendedModels = usersChunk.Select(x => new UserExtended(x)).ToList(); return(extendedModels); }
private void button1_Click(object sender, EventArgs e) { var api = new VkApi(); // авторизуемся try { api.Authorize(new ApiAuthParams { ApplicationId = appId, Login = login, Password = pass, Settings = Settings.All }); } catch (Exception) { MessageBox.Show("Ошибка авторизации"); return; } //var group = api.Utils.ResolveScreenName("leningradka63"); // получаем id сущности с коротким именем habr // получаем данные пользователей из группы, макс. кол-во записей = 1000 var parameters = new GroupsGetMembersParams(); parameters.GroupId = "magicstoresamara"; int signedCount = 0; //parameters.GroupId = "antiterror_russia"; parameters.Fields = UsersFields.City; var userIds = api.Groups.GetMembers(parameters); Thread.Sleep(340); foreach (User id in userIds) { try { if (api.Groups.IsMember("happybabymom", id.Id)) { signedCount++; } label1.Text = Convert.ToString(signedCount + " / " + userIds.Count); Thread.Sleep(340); //listBox1.Items.Add(totalCount + " " + id.City.Title + " " + id.Sex); } catch (Exception) { } } MessageBox.Show(signedCount + " / " + userIds.Count); /* * // Информация о группе * var groups = api.Groups.GetById("magicstoresamara", GroupsFields.All); * listBox1.Items.Add(groups.Contacts.First().UserId); * listBox1.Items.Add(groups.Name); * * // Является ли участником группы * label1.Text = Convert.ToString(api.Groups.IsMember("magicstoresamara", 153355038)); */ }
/// <inheritdoc /> public VkCollection <User> GetMembers(GroupsGetMembersParams @params, bool skipAuthorization = false) { return(_vk.Call(methodName: "groups.getMembers", parameters: @params, skipAuthorization: skipAuthorization) .ToVkCollectionOf(selector: x => @params.Fields != null ? x : new User { Id = x })); }
public IEnumerable <User> GetGroupMembers(string id, long offset = 0) { var result = new List <User>(); var paramas = new GroupsGetMembersParams() { GroupId = id, Offset = offset, Fields = UsersFields.All }; var response = _vkApi.Groups.GetMembers(paramas); while (response?.Any() ?? false) { result.AddRange(response.ToList()); paramas.Offset += 1000; try { Console.WriteLine(paramas.Offset); response = _vkApi.Groups.GetMembers(paramas); } catch { response = null; } } return(result); }
public ReadOnlyCollection <User> GetMembers(out int totalCount, GroupsGetMembersParams @params) { var response = GetMembers(@params); totalCount = Convert.ToInt32(response.TotalCount); return(response.ToReadOnlyCollection()); }
public async Task <List <User> > GetMembersAsync() { List <User> result = new List <User>(); var groupId = Group.Id; GroupsGetMembersParams groupMembersCountParams = new GroupsGetMembersParams { GroupId = groupId.ToString(), Fields = UsersFields.Status | UsersFields.Counters | UsersFields.Sex | UsersFields.City | UsersFields.Country | UsersFields.BirthDate | UsersFields.PhotoMaxOrig | UsersFields.Site }; long communityOffset = 0; bool communityMembersFinished = false; long maxCommunityMembersBatch = 1000; while (!communityMembersFinished) { GroupsGetMembersParams communityMembersParams = new GroupsGetMembersParams { GroupId = groupId.ToString(), Fields = UsersFields.Counters, Offset = communityOffset, Sort = GroupsSort.IdAsc, Count = maxCommunityMembersBatch }; List <User> membersBatch; try { VkCollection <User> vkResult = await Vk.ServiceApi.Groups.GetMembersAsync(communityMembersParams); membersBatch = vkResult.ToList(); } catch (Exception e) { Console.WriteLine("Error getting members for community " + groupId + ": " + e); throw; } if (membersBatch.Count > 0) { result.AddRange(membersBatch); communityOffset = result.Count; } if (membersBatch.Count < maxCommunityMembersBatch) { communityMembersFinished = true; } } return(result); }
public VkParser() { vkapi = new VkApi(); @params = new GroupsGetMembersParams { Fields = UsersFields.All }; apiparams = new ApiAuthParams(); vkapi.SetLanguage(VkNet.Enums.Language.Ua); }
public ReadOnlyCollection <User> GetMembers(out int totalCount, GroupsGetMembersParams @params) { var response = _vk.Call("groups.getMembers", @params, true); totalCount = response["count"]; VkResponseArray users = response["items"]; return(users.ToReadOnlyCollectionOf <User>(x => @params.Fields != null? x : new User { Id = x })); }
public ReadOnlyCollection <User> GetMembers(string gid, out int totalCount, uint?count = null, uint?offset = null, GroupsSort sort = null, UsersFields fields = null, GroupsFilters filters = null) { var parameters = new GroupsGetMembersParams { Offset = offset, Filter = filters, Fields = fields, Count = count, GroupId = gid, Sort = sort }; return(GetMembers(out totalCount, parameters)); }
public ReadOnlyCollection <User> GetMembers(long gid, out int totalCount, uint?count = null, uint?offset = null, GroupsSort sort = null, UsersFields fields = null, GroupsFilters filters = null) { VkErrors.ThrowIfNumberIsNegative(() => gid); var parameters = new GroupsGetMembersParams { GroupId = gid.ToString(), Count = count, Offset = offset, Sort = sort, Fields = fields, Filter = filters }; return(GetMembers(out totalCount, parameters)); }
private List <UserExtended> GetGroupMembersOffset(int offset, string groupName, VkApi api, UsersFields fields) { List <User> usersChunk; var param = new GroupsGetMembersParams() { Offset = offset, GroupId = groupName, Sort = _getMembersSort, Fields = fields }; usersChunk = api.Groups.GetMembers(param).ToList(); var model = usersChunk.Select(x => x.ToExtendedModel()).ToList(); return(model); }
static void Main(string[] args) { VkApi api = new VkApi(); #region скрытый ApiAuthParams authParams = new ApiAuthParams(); authParams.Login = "******"; authParams.Password = "";//не скажу authParams.Settings = Settings.All; authParams.ApplicationId = 5963990; #endregion api.Authorize(authParams); if (api.IsAuthorized == false) { Console.WriteLine("IsAuthorized = false"); Console.ReadKey(); Environment.Exit(0); } else { Console.WriteLine("IsAuthorized = true"); } GroupsGetMembersParams param = new GroupsGetMembersParams(); param.GroupId = "itpark32"; //param.Fields = UsersFields.Nickname| UsersFields.Sex; доп параметры long currentCount = 0; VkCollection <User> users = null; do { param.Offset = currentCount;//потому что по 1000 за раз выбирает users = api.Groups.GetMembers(param); Console.WriteLine("кол-во людей в группе = {0}", users.TotalCount); foreach (User item in users) { Console.WriteLine("{0} = {1}", ++currentCount, item.Id); } } while (currentCount < (long)users.TotalCount); Console.ReadKey(); }
public ReadOnlyCollection<User> GetMembers(out int totalCount, GroupsGetMembersParams @params) { var response = _vk.Call("groups.getMembers", @params, true); totalCount = response["count"]; VkResponseArray users = response["items"]; return users.ToReadOnlyCollectionOf<User>(x => @params.Fields != null? x : new User {Id = x}); }
public VkCollection<User> GetMembers(GroupsGetMembersParams @params, bool skipAuthorization = true) { return _vk.Call("groups.getMembers", @params, skipAuthorization).ToVkCollectionOf(x => @params.Fields != null? x : new User {Id = x}); }
/// <inheritdoc /> public async Task <VkCollection <User> > GetMembersAsync(GroupsGetMembersParams @params, bool skipAuthorization = false) { return(await TypeHelper.TryInvokeMethodAsync(() => _vk.Groups.GetMembers(@params, skipAuthorization))); }
public ReadOnlyCollection<User> GetMembers(string gid, out int totalCount, uint? count = null, uint? offset = null, GroupsSort sort = null, UsersFields fields = null, GroupsFilters filters = null) { var parameters = new GroupsGetMembersParams { Offset = offset, Filter = filters, Fields = fields, Count = count, GroupId = gid, Sort = sort }; return GetMembers(out totalCount, parameters); }
public ReadOnlyCollection<User> GetMembers(long gid, out int totalCount, uint? count = null, uint? offset = null, GroupsSort sort = null, UsersFields fields = null, GroupsFilters filters = null) { VkErrors.ThrowIfNumberIsNegative(() => gid); var parameters = new GroupsGetMembersParams { GroupId = gid.ToString(), Count = count, Offset = offset, Sort = sort, Fields = fields, Filter = filters }; return GetMembers(out totalCount, parameters); }
public VkCollection <User> GetMembers(GroupsGetMembersParams @params) { return(_vk.Call("groups.getMembers", @params, true).ToVkCollectionOf(x => @params.Fields != null? x : new User { Id = x })); }
public VkCollection <User> GetMembers(GroupsGetMembersParams @params, bool skipAuthorization = true) { return(_vk.Call("groups.getMembers", @params, skipAuthorization).ToVkCollectionOf(x => @params.Fields != null? x : new User { Id = x })); }
/// <inheritdoc /> public Task <VkCollection <User> > GetMembersAsync(GroupsGetMembersParams @params, bool skipAuthorization = false) { return(TypeHelper.TryInvokeMethodAsync(func: () => GetMembers(@params: @params, skipAuthorization: skipAuthorization))); }