基于搜狗微信搜索的微信公众号爬虫接口

Build Status PyPI version PyPI py27,py35,py36 PyPI

ws_api.get_gzh_info('南航青年志愿者')

 __        __        _           _   ____
 \ \      / /__  ___| |__   __ _| |_/ ___|  ___   __ _  ___  _   _
  \ \ /\ / / _ \/ __| '_ \ / _` | __\___ \ / _ \ / _` |/ _ \| | | |
   \ V  V /  __/ (__| | | | (_| | |_ ___) | (_) | (_| | (_) | |_| |
    \_/\_/ \___|\___|_| |_|\__,_|\__|____/ \___/ \__, |\___/ \__,_|
                                                 |___/

项目简介

基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫

如果有问题,请提issue

CHANGELOG

交流分享

赞助作者

甲鱼说,咖啡是灵魂的饮料,买点咖啡

谢谢这些人的☕️

支付宝扫码大家一起领红包:

或者直接转账:

问题集锦

Q:没有得到原始文章url / 提示链接已经过期?
A:微信屏蔽此接口,请在临时链接有效期内保存文章内容。

Q:获取文章只能10篇?
A:是的,仅显示最近10条群发。

Q:使用的是python 2 还是 3?
A:都支持,若出错,请报BUG。

安装

pip install wechatsogou --upgrade

使用

初始化 API

import wechatsogou

# 可配置参数

# 直连
ws_api = wechatsogou.WechatSogouAPI()

# 验证码输入错误的重试次数,默认为1
ws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)

# 所有requests库的参数都能在这用
# 如 配置代理,代理列表中至少需包含1个 HTTPS 协议的代理, 并确保代理可用
ws_api = wechatsogou.WechatSogouAPI(proxies={
    "http": "127.0.0.1:8888",
    "https": "127.0.0.1:8888",
})

# 如 设置超时
ws_api = wechatsogou.WechatSogouAPI(timeout=0.1)

获取特定公众号信息 - get_gzh_info

ws_api.get_gzh_info('南航青年志愿者')

搜索公众号

ws_api.search_gzh('南京航空航天大学')

list of dict, dict:

{
    'profile_url': '',  # 最近10条群发页链接
    'headimage': '',  # 头像
    'wechat_name': '',  # 名称
    'wechat_id': '',  # 微信id
    'post_perm': int,  # 最近一月群发数
    'view_perm': int,  # 最近一月阅读量
    'qrcode': '',  # 二维码
    'introduction': '',  # 介绍
    'authentication': ''  # 认证
}

搜索微信文章

ws_api.search_article('南京航空航天大学')

list of dict, dict:

{
    'article': {
        'title': '',  # 文章标题
        'url': '',  # 文章链接
        'imgs': '',  # 文章图片list
        'abstract': '',  # 文章摘要
        'time': int  # 文章推送时间 10位时间戳
    },
    'gzh': {
        'profile_url': '',  # 公众号最近10条群发页链接
        'headimage': '',  # 头像
        'wechat_name': '',  # 名称
        'isv': int,  # 是否加v 1 or 0
    }
}

解析最近文章页 - get_gzh_article_by_history

ws_api.search_article('南京航空航天大学')


### 解析 首页热门 页 - get_gzh_article_by_hot

![ws_api.get_gzh_article_by_hot(WechatSogouConst.hot_index.food)](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/get_gzh_article_by_hot.png)

- 使用

In [1]: from pprint import pprint ...: from wechatsogou import WechatSogouAPI, WechatSogouConst ...: ...: ws_api = WechatSogouAPI() ...: gzh_articles = ws_api.get_gzh_article_by_hot(WechatSogouConst.hot_index.food) ...: for i in gzh_articles: ...: pprint(i) ...: { 'article': { 'abstract': '闷热的夏天有什么事情能比吃上凉凉的甜品更惬意的呢?快一起动手做起来吧,简单方便,放冰箱冻一冻,那感觉~橙汁蒸木瓜木瓜1个(300-400克左右),橙子4个,枫糖浆20克(如果家里没有,也可以用蜂蜜、炼乳等代替),椰果适量。做法1.用削皮', 'main_img': 'http://img01.sogoucdn.com/net/a/04/link?appid=100520033&url=http%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2Fw9UGwFPia7QTUIadPibgW8OFkqf1ibR40xicKfzofRS0sDpaFp3CG0jkPyQKeXl44TXswztW1SJnic7tmCibjB8rIIGw%2F0%3Fwx_fmt%3Djpeg', 'open_id': 'oIWsFty9hHVI9F10amtzx5TOWIq8', 'time': 1501325220, 'title': '夏日甜品制作方法,不收藏后悔哦!', 'url': 'http://mp.weixin.qq.com/s?src=3&timestamp=1501328525&ver=1&signature=n9*oX0k4YbNFhNMsOjIekYrsha44lfBSCbG9jicAbGYrWNN8*48NzpcaHdxwUnC12syY5-ZxwcBfiJlMzdbAwWKlo26EW14w2Ax*gjLVlOX-AGXB4443obZ-GK0pw*AFZAGZD8sI4AFBZSZpyeaxN4sS7cpynxdIuw6S2h*--LI=' }, 'gzh': { 'headimage': 'http://img03.sogoucdn.com/app/a/100520090/oIWsFty9hHVI9F10amtzx5TOWIq8', 'wechat_name': '甜品烘焙制作坊' } } ... ...


- 数据结构
```python
{
    'gzh': {
        'headimage': str,  # 公众号头像
        'wechat_name': str,  # 公众号名称
    },
    'article': {
        'url': str,  # 文章临时链接
        'title': str,  # 文章标题
        'abstract': str,  # 文章摘要
        'time': int,  # 推送时间,10位时间戳
        'open_id': str,  # open id
        'main_img': str  # 封面图片
    }
}

获取关键字联想词

关键词列表

['a', 'b', ...]

TODO