成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

python實(shí)現(xiàn)微信群友統(tǒng)計(jì)器

CompileYouth / 3861人閱讀

摘要:下面來(lái)分享一下這個(gè)微信群友統(tǒng)計(jì)器的實(shí)現(xiàn)思路,你可以基于它去拓展更多實(shí)用功能。實(shí)現(xiàn)思路解決復(fù)雜問(wèn)題最好的辦法就是把問(wèn)題簡(jiǎn)單化,拆解成若干個(gè)小問(wèn)題,然后逐個(gè)擊破。統(tǒng)計(jì)器源碼只需要修改倒數(shù)第行,改成你要查詢(xún)的微信群,然后就可以使用了。

基于微信可以做很多有意思的練手項(xiàng)目,看了這張速查表你就會(huì)發(fā)現(xiàn),可以做的事情超過(guò)你的想象。

有一次我想要統(tǒng)計(jì)微信群里哪些同學(xué)在北京,但發(fā)現(xiàn)直接問(wèn)是很難得到準(zhǔn)確結(jié)果的……

這時(shí)候不如運(yùn)用 wxpy 這個(gè)庫(kù)抓取所有群友的地區(qū)信息,很快就可以得到想要的結(jié)果,甚至還精確到了區(qū)。

下面來(lái)分享一下這個(gè)微信群友統(tǒng)計(jì)器的實(shí)現(xiàn)思路,你可以基于它去拓展更多實(shí)用功能。

實(shí)現(xiàn)思路

解決復(fù)雜問(wèn)題最好的辦法就是把問(wèn)題簡(jiǎn)單化,拆解成若干個(gè)小問(wèn)題,然后逐個(gè)擊破。問(wèn)題的拆解思路如下:

▍1. 如何通過(guò) wxpy 庫(kù)找到指定微信群?

使用 bot.groups() 方法找出最近聊天的微信群

使用 wxpy 提供的 bot.groups().search("群名")[0] 方法找到指定微信群

▍2. 如何獲取到指定微信群的全部群成員?

對(duì)微信群對(duì)象使用 .members 獲得微信群的全部群成員

▍3. 如何獲取到群成員的省份跟城市的信息?

對(duì)獲取到的微信群的全部群成員,使用 for 循環(huán)一個(gè)一個(gè)的用 .province 和 .city 獲取省份跟城市信息

然后進(jìn)行統(tǒng)計(jì),即可獲得各地區(qū)的人數(shù)。

統(tǒng)計(jì)器源碼

只需要修改倒數(shù)第5行,改成你要查詢(xún)的微信群,然后就可以使用了。


from wxpy import *

bot = Bot()

def get_members(group_name):
    print(bot.groups().search(group_name)[0])
    group = bot.groups().search(group_name)[0]
    #使用此方法用來(lái)更新群聊成員的詳細(xì)信息 (地區(qū)、性別、簽名等)
    group.update_group(True)
    #獲取該群聊組的全部成員對(duì)象
    members = group.members
    return members

def clean_members(members):
    #用來(lái)存放群聊里出現(xiàn)的全部的省份跟城市的信息
    member_clean = []
    for member in members:
        #.province跟.city分別獲取群成員對(duì)象的省份跟城市
        member_info = member.province + member.city
        #可能有的成員沒(méi)有設(shè)置自己的地區(qū)跟城市,獲取到的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:
        #統(tǒng)計(jì)某個(gè)省份跟地區(qū)在member_clean列表里面的人數(shù)
        if member_clean.count(m):
            member_dict[m] = member_clean.count(m)
            #把member_clean列表里,向member_dict字典里添加過(guò)的省份地區(qū)刪除掉
            member_clean = [value for value in member_clean if value != m]
    return member_dict

#改成想要統(tǒng)計(jì)的群聊名字,很久沒(méi)有聊天記錄的群最好先發(fā)條消息
group_n = "實(shí)用主義第三期入門(mén)訓(xùn)練營(yíng)"
members = get_members(group_n)
member_clean = clean_members(members)
member_dict = result(member_clean)
print(member_dict)

速查表下載

這張速查表涵蓋了 wxpy 文檔中的所有功能,可以對(duì)照著方便索引。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/45001.html

相關(guān)文章

  • 成為數(shù)據(jù)科學(xué)家的入門(mén)項(xiàng)目

    摘要:基于大量的數(shù)據(jù)統(tǒng)計(jì),網(wǎng)球是一種很好的預(yù)測(cè)類(lèi)體育項(xiàng)目。數(shù)據(jù)科學(xué)家根據(jù)歷史數(shù)據(jù)和玩家信息來(lái)構(gòu)建預(yù)測(cè)模型,并將結(jié)果與博彩公司的評(píng)估進(jìn)行比較。目標(biāo)是找出機(jī)器學(xué)習(xí)模型與博彩公司評(píng)估之間的差距,從而有機(jī)會(huì)獲勝。這是一個(gè)很好的實(shí)際數(shù)據(jù)科學(xué)項(xiàng)目。 作者:chen_h微信號(hào) & QQ:862251340微信公眾號(hào):coderpai簡(jiǎn)書(shū)地址:https://www.jianshu.com/p/56c......

    Julylovin 評(píng)論0 收藏0
  • 效率倍增,PyCaret:一個(gè)開(kāi)源、低代碼的 Python 機(jī)學(xué)習(xí)工具

    摘要:是一個(gè)開(kāi)源低代碼的機(jī)器學(xué)習(xí)庫(kù),可自動(dòng)執(zhí)行機(jī)器學(xué)習(xí)工作流。它是一種端到端的機(jī)器學(xué)習(xí)和模型管理工具,可以以指數(shù)方式加快實(shí)驗(yàn)周期并提高您的工作效率。與其他開(kāi)源機(jī)器學(xué)習(xí)庫(kù)相比,是一個(gè)替代的低代碼庫(kù),可用于僅用幾行代碼替換數(shù)百行代碼。 ...

    binta 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

CompileYouth

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<