Skip to main content

导出一个公众号里的所有群发图文、根据关键词搜索原创图文和导出行业模板消息示例

Project description

wechat_mp 是什么?

是用来登陆微信公众号后台的第三方库,而登陆后台不是微信操作后台发送群发或者消息等,因为微信本身就提供了开发者文档供用户调用。 微信后台有一些功能是API不提供的,例如以下三个:

  • 根据公众号名称搜索公众号,并查看其群发过的图文
  • 根据关键词搜索相关的群发图文
  • 导出公众号选择的模板行业库中的所有模板示例

Python版本

  • Python 3.6.x
  • 如果是3.7,需要你去Pipfile文件中,将python_version改成3.7。

如何安装

$ git clone https://github.com/RogerLiNing/wechat_mp.git
$ cd wechat_mp
$ python setup.py install

使用方法

登陆

需要注意,你需要先注册一个微信公众号账号, 服务号或者订阅号都可以。需要注意,只有认证的服务号才能获取行业模板消息。 导出包后,输入账号和密码登陆;需要注意的是,目前使用PIL弹出二维码,如果在没有GUI的操作系统无法扫码

from wechat_mp import Wechat
client = Wechat(email=EMAIL, password=PASSWORD)

1. 查询某个公众号的历史群发图文

目前支持:

  • 根据名称搜索公众号
  • 公众号本身是对象,可以通过对象方法articles获取其图文列表
  • 图文本身也是对象,可以查看其属性
  • 可以将图文列表导出到Excel文件中

搜索公众号:

返回公众号对象列表,公众号对象中主要的两个:nickname 和 service_type

accounts = client.search_account("python阅读空间", limit=10)

公号对象属性

属性 解释
fakeid ID
nickname 公众号昵称
alias 自定义昵称
round_head_img 圆头像地址
service_type 公号类型

获取公众号的推送图文

这里选取了第一个账号,调用articles()方法获取其所有的图文。有些公众号有很多图文,传入limit参数来获取前N篇图文。 你也可以传入title_contain参数来只获取标题包含特定关键词的图文。

articles = accounts[0].articles()

图文对象属性

属性 解释
aid 群发ID+ 群发序号
appmsgid 群发id
cover 封面地址
digest 图文摘要
itemidx 图文群发序号
link 图文链接
title 图文标题

导出到文件

调用图文结果对象articles 提供了 save_articles_as_excel方法可以导出图文结果到Excel文件。

articles.save_articles_as_excel("python阅读空间")

2.根据关键词搜索图文

目前支持:

  • 根据关键词搜索图文
  • 图文本身也是对象,可以查看其属性
  • 可以将图文列表导出到Excel文件中

搜索图文

调用search_article方法会返回一个结果对象,你可以是用for循环输出打印

result = client.search_article("python内存管理",limit=100)

图文对象属性

属性
article_type 图文类目
author 作者
content 正文内容(包含HTML代码)
cover_url 封面地址
head_img_url 公众号头像地址
nickname 公众号昵称
source_can_reward
source_reprint_status
source_url
title 图文标题
url 图文地址

将图文导出到Excel文件

调用图文结果对象result 提供了 save_articles_as_excel方法可以导出图文结果到Excel文件。

result.save_articles_as_excel("python内存管理")

3. 导出公众号选择的模板行业库中的所有模板示例

注意:认证的服务号才能使用该接口

目前支持:
  • 获取公众号目前的模板行业里的所有模板
  • 可以获取具体示例
目前不支持
  • 导出到excel文件
使用方法
>>> templates = client.get_templates(threads=20, detail=True) # threads是使用多少个线程跑,detail是否获取具体示例
>>> templates[0] # 查看第一个模板

{'class1': 'IT科技',
 'class2': '互联网|电子商务',
 'id': 'OPENTM228356100',
 'person_used': 46,
 'title': '创建简历成功提醒',
 'detail': {'class1': 'IT科技',
  'class2': '互联网|电子商务',
  'content': '{{first.DATA}}\n简历名称:{{keyword1.DATA}}\n发布时间:{{keyword2.DATA}}\n{{remark.DATA}}',
  'example': '您在58同城上创建简历成功\r\n简历名称:财务主管\r\n发布时间:2014-07-27\r\n若非本人操作请联系客服中心进行修改',
  'id': 'OPENTM228356100',
  'modify_time': '2015-01-15 16:47:52',
  'person_used': 46,
  'title': '创建简历成功提醒'}}

作者公众号

Python阅读空间

Python阅读空间

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wechat-mp-1.0.0.tar.gz (11.5 kB view hashes)

Uploaded Source

Built Distribution

wechat_mp-1.0.0-py3-none-any.whl (14.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page