30行python代碼實現微博熱點推送給微信羣

最近開始學習Python語言,說實話仍是挺有趣的,因此週末在家搗鼓了一下python自動爬取微博熱搜榜單並自動發送給微信羣好友。技術主要使用了python itchat,requests,BeautifulSoup庫。 如下是實現代碼:python

import itchat
from itchat.content import TEXT
from itchat.content import *
import requests
from bs4 import BeautifulSoup
r=requests.get('https://s.weibo.com/top/summary?cate=realtimehot')
str1='今日微博熱搜消息\n'
if(r.status_code==200):
    r.encoding='utf-8'
    bs=BeautifulSoup(r.text,features="lxml")
    rank=bs.select('.td-02 a')
    for index in range(10):
        str1+=str(index+1)+'.'+rank[index].text.strip()+'https://s.weibo.com'+rank[index]['href']+'\n'

itchat.auto_login(hotReload=True)
itchat.send(u'Hello,world','filehelper')
groupName="南大榮譽學長羣" # 你真實微信中的羣備註名稱.
@itchat.msg_register(TEXT, isGroupChat=True)
def SentChatRoomsMsg(name, context):
    itchat.get_chatrooms(update=True)
    iRoom = itchat.search_chatrooms(name)
    for room in iRoom:
        if room['NickName'] == name:
            userName = room['UserName']
            break
    itchat.send_msg(context, userName)

SentChatRoomsMsg(groupName,str1)
print('發送完畢!')
複製代碼

使用上述代碼請確保安裝了pip包安裝工具以及安裝好import的包。若是你還不會安裝,請看個人另外一篇專欄有介紹如何安裝pip工具!bash

若是要實現向好友發送消息,只需增長下面函數並調用:微信

def sendMsgToFriend(context):
    name = itchat.search_friends(name=u'老媽')
    a = name[0]["UserName"]
    itchat.send_msg(context,a)
複製代碼

完!函數

相關文章
相關標籤/搜索