【Python】博客信息爬取-微信消息自动发送
1、环境安装
python -m pip install --upgrade pip pip install bs4 pip install wxpy pip install lxml
2、博客爬取及发送
from bs4 import BeautifulSoup
from threading import Timer
import requests
import traceback
from wxpy import * url = '' nIndex = 6
my_groups = None def getMsg(nIndex):
# 获得网址源码
html = requests.get(url).content
soup = BeautifulSoup(html, 'lxml') # print('开始抓取')
# title = soup.title.string
# print(title) # areaall = soup.find(id='sina_keyword_ad_area2').children
areaall = soup.select('#sina_keyword_ad_area2 p')
# print(areaall)
iCount = len(areaall)
# print(iCount) # print(nIndex)
msg = ""
if iCount < nIndex:
return msg,0
else:
msg = areaall[iCount - 1]
msg = msg.get_text()
# print(msg)
return msg,iCount msgTemp = ''
nNullMsg = 0 def auto_send():
try:
global nIndex
global my_groups
global msgTemp
global nNullMsg
msgContent,nIndexMsg = getMsg(nIndex)
msgContent = str(msgContent).strip()
# print(nIndexMsg)
# nIndex += 1
# print(msgContent)
if len(msgContent) != 0 :
# print(str(nIndex) + ":\t" + msgContent)
# return
if msgContent != msgTemp :
if my_groups != None and len(my_groups) > 0 :
print("发送消息:" + msgContent)
my_groups[0].send(msgContent)
msgTemp = msgContent
else:
print('消息已发送')
else:
nNullMsg += 1
print("没有新消息")
if nNullMsg == 20 :
print("恭喜发财,今日推送完毕")
return # # 每隔86400秒(1天),发送1次
t = Timer(3, auto_send)
t.start() except Exception as e:
print(e)
# 你的微信昵称,注意这里不是备注,也不是微信帐号
my_friend = bot.friends().search('NetUML')[0]
my_friend.send(u"报告老板,今日份的信息发送失败了!") if __name__ == "__main__": # 初始化机器人,扫码登陆微信,适用于Windows系统
# 初始化一个机器人对象
bot = Bot(cache_path=True) my_groups = bot.groups().search('广告技术') for group in my_groups:
print(group) # # Linux系统,执行登陆请调用下面的这句
# bot = Bot(console_qr=2, cache_path="botoo.pkl") # 调用函数进行消息发送
auto_send()
【Python】博客信息爬取-微信消息自动发送的更多相关文章
- 利用爬虫将Yuan先生的博客文章爬取下来
由于一次巧遇,我阅读了Yuan先生的一篇博客文章,感觉从Yuan先生得博客学到很多东西,很喜欢他得文章.于是我就关注了他,并且想阅读更多出自他手笔得博客文章,无奈,可能Yuan先生不想公开自己得博客吧 ...
- itchat和matplotlib的结合使用爬取微信信息
前几天无意中看到了一片文章,<一件有趣的事:我用 Python 爬了爬自己的微信朋友>,这篇文章写的是使用python中的itchat爬取微信中朋友的信息,其中信息包括,昵称.性别.地理位 ...
- python itchat 爬取微信好友信息
原文链接:https://mp.weixin.qq.com/s/4EXgR4GkriTnAzVxluJxmg 「itchat」一个开源的微信个人接口,今天我们就用itchat爬取微信好友信息,无图言虚 ...
- 使用Python爬取微信公众号文章并保存为PDF文件(解决图片不显示的问题)
前言 第一次写博客,主要内容是爬取微信公众号的文章,将文章以PDF格式保存在本地. 爬取微信公众号文章(使用wechatsogou) 1.安装 pip install wechatsogou --up ...
- python爬取微信公众号
爬取策略 1.需要安装python selenium模块包,通过selenium中的webdriver驱动浏览器获取Cookie的方法.来达到登录的效果 pip3 install selenium c ...
- Python爬取微信好友
前言 今天看到一篇好玩的文章,可以实现微信的内容爬取和聊天机器人的制作,所以尝试着实现一遍,本文记录了实现过程和一些探索的内容 来源: 痴海 链接: https://mp.weixin.qq.com/ ...
- 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- 安居客scrapy房产信息爬取到数据可视化(下)-可视化代码
接上篇:安居客scrapy房产信息爬取到数据可视化(下)-可视化代码,可视化的实现~ 先看看保存的数据吧~ 本人之前都是习惯把爬到的数据保存到本地json文件, 这次保存到数据库后发现使用mongod ...
- python爬取微信小程序(实战篇)
python爬取微信小程序(实战篇) 本文链接:https://blog.csdn.net/HeyShHeyou/article/details/90452656 展开 一.背景介绍 近期有需求需要抓 ...
随机推荐
- Java爬取校内论坛新帖
Java爬取校内论坛新帖 为了保持消息灵通,博主没事会上上校内论坛看看新帖,作为爬虫爱好者,博主萌生了写个爬虫自动下载的想法. 嗯,这次就选Java. 第三方库准备 Jsoup Jsoup是一款比较好 ...
- vs 基本验证控件使用
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.c ...
- 杭电acm2059-龟兔赛跑 java
一看题就知道是动态规划,不过这要看下如何设置变化数组了 先分析这道题:兔子到达终点的时间时固定的,因此只需要考虑乌龟了,乌龟骑电车和骑自行车的时间,然后计算,因为中间有N个充电站,可以看做N个点(到起 ...
- python之进程和线程
1 操作系统 为什么要有操作系统 ? 操作系统位于底层硬件与应用软件之间的一层 工作方式:向下管理硬件,向上提供接口 操作系统进程切换: 出现IO操作 固定时间 2 进程和线程的概念 进程就是一个程序 ...
- 微信小程序-转发
仅供参考 1,js: onShareAppMessage(res) { return { title: '我在使用俺搜·找客户,10万+材料人都在用,就差你了', path: '/pages/inde ...
- Compile groovy mixed with java in Maven
Assuming that groovy codes are in src/main/groovy and java codes are in src/main/java. We can use 2 ...
- 性能优化 Profiler MAT 内存泄漏 堆转储 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- HashMap代码解析
hashmap (jdk 1.7)使用 “数组-链表” 方式进行存储,图形化表示如下: 即,前面是一个数组,后面跟一个链表,那么数据结构这个对应到HashMap的代码里面是什么样子的呢? 在HashM ...
- openssl RSA密钥格式PKCS1和PKCS8相互转换
RSA私钥格式PKCS1和PKCS8相互转换 RSA公钥格式PKCS1和PKCS8相互转换 以下转换基于openssl命令的操作: 1. openssl 生成pkcs1格式的私钥,密钥长度1024位, ...
- C# 多线程调用静态方法或者静态实例中的同一个方法-方法内部的变量是线程安全的
C# 多线程调用静态方法或者静态实例中的同一个方法-方法内部的变量是线程安全的 using System;using System.Threading;using System.Threading. ...