摘要:下面來分享一下這個微信群友統計器的實現思路,你可以基于它去拓展更多實用功能。實現思路解決復雜問題最好的辦法就是把問題簡單化,拆解成若干個小問題,然后逐個擊破。統計器源碼只需要修改倒數第行,改成你要查詢的微信群,然后就可以使用了。
基于微信可以做很多有意思的練手項目,看了這張速查表你就會發現,可以做的事情超過你的想象。
有一次我想要統計微信群里哪些同學在北京,但發現直接問是很難得到準確結果的……
這時候不如運用 wxpy 這個庫抓取所有群友的地區信息,很快就可以得到想要的結果,甚至還精確到了區。
下面來分享一下這個微信群友統計器的實現思路,你可以基于它去拓展更多實用功能。
實現思路解決復雜問題最好的辦法就是把問題簡單化,拆解成若干個小問題,然后逐個擊破。問題的拆解思路如下:
▍1. 如何通過 wxpy 庫找到指定微信群?
使用 bot.groups() 方法找出最近聊天的微信群
使用 wxpy 提供的 bot.groups().search("群名")[0] 方法找到指定微信群
▍2. 如何獲取到指定微信群的全部群成員?
對微信群對象使用 .members 獲得微信群的全部群成員
▍3. 如何獲取到群成員的省份跟城市的信息?
對獲取到的微信群的全部群成員,使用 for 循環一個一個的用 .province 和 .city 獲取省份跟城市信息
然后進行統計,即可獲得各地區的人數。
統計器源碼只需要修改倒數第5行,改成你要查詢的微信群,然后就可以使用了。
from wxpy import * bot = Bot() def get_members(group_name): print(bot.groups().search(group_name)[0]) group = bot.groups().search(group_name)[0] #使用此方法用來更新群聊成員的詳細信息 (地區、性別、簽名等) group.update_group(True) #獲取該群聊組的全部成員對象 members = group.members return members def clean_members(members): #用來存放群聊里出現的全部的省份跟城市的信息 member_clean = [] for member in members: #.province跟.city分別獲取群成員對象的省份跟城市 member_info = member.province + member.city #可能有的成員沒有設置自己的地區跟城市,獲取到的member_info可能為空 member_info_clean = member_info.replace(" ", "") if not member_info_clean == "": member_clean.append(member_info_clean) return member_clean def result(member_clean): member_dict = {} for m in member_clean: #統計某個省份跟地區在member_clean列表里面的人數 if member_clean.count(m): member_dict[m] = member_clean.count(m) #把member_clean列表里,向member_dict字典里添加過的省份地區刪除掉 member_clean = [value for value in member_clean if value != m] return member_dict #改成想要統計的群聊名字,很久沒有聊天記錄的群最好先發條消息 group_n = "實用主義第三期入門訓練營" members = get_members(group_n) member_clean = clean_members(members) member_dict = result(member_clean) print(member_dict)速查表下載
這張速查表涵蓋了 wxpy 文檔中的所有功能,可以對照著方便索引。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/45001.html
摘要:基于大量的數據統計,網球是一種很好的預測類體育項目。數據科學家根據歷史數據和玩家信息來構建預測模型,并將結果與博彩公司的評估進行比較。目標是找出機器學習模型與博彩公司評估之間的差距,從而有機會獲勝。這是一個很好的實際數據科學項目。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/56c......
摘要:是一個開源低代碼的機器學習庫,可自動執行機器學習工作流。它是一種端到端的機器學習和模型管理工具,可以以指數方式加快實驗周期并提高您的工作效率。與其他開源機器學習庫相比,是一個替代的低代碼庫,可用于僅用幾行代碼替換數百行代碼。 ...
閱讀 1646·2023-04-26 02:11
閱讀 2989·2023-04-25 16:18
閱讀 3720·2021-09-06 15:00
閱讀 2636·2019-08-30 15:55
閱讀 1941·2019-08-30 13:20
閱讀 2058·2019-08-26 18:36
閱讀 3131·2019-08-26 11:40
閱讀 2549·2019-08-26 10:11