Sgwc
搜狗微信文章、公众号爬虫接口。
安装
pip3 install sgwc --upgrade
使用
from sgwc import get_official, search_officials, search_articles, get_hot_articles
official = get_official(official_id='official_id') # 通过微信号获取指定公众号
officials = search_officials(keyword='keyword') # 通过关键字搜索公众号
articles = search_articles(keyword='keyword') # 通过关键字搜索文章
articles = get_hot_articles() # 获取热门文章
从 Article、Official 实例对象提取相关信息
article.url
article['url'] # 可以像字典类型一样, 提取信息(但不是字典类型)
article.items() # 返回可遍历的(键, 值) 元组数组
setting
from sgwc import setting
# 自定义设置获取session对象函数, 返回: Session对象
# 详见: https://2.python-requests.org//en/master/user/advanced/#session-objects
setting.get_session = get_session
# 自定义搜狗验证码回调函数, 参数: 验证码图片(pillow Image 对象), 返回: 验证码
setting.sougo_captcha_callback = sougo_captcha_callback
# 自定义微信验证码回调函数, 参数: 验证码图片(pillow Image 对象), 返回: 验证码
setting.wechat_captcha_callback = wechat_captcha_callback
# 微信链接异常回调函数(系统出错/链接过期), 参数: 链接
self.wechat_link_error_callback = _wechat_link_error_callback
# 验证码/代理错误(代理不可用或超时)重复次数, 超过重复次数将跳过
setting.repeat_times = 3
# 自定义获取代理函数
# 返回格式: {'http': 'http://127.0.0.1:80', 'https': 'http://127.0.0.1:80'}
# 详见: https://2.python-requests.org//en/master/user/advanced/#proxies
setting.get_proxy = get_proxy
setting.proxy_timeout = 10 # 代理超时设置
# 代理使用失败回调函数(当代理失败达到重复次数将会调用), 参数: 链接
setting.proxy_error_callback = proxy_error_callback
- 当设置了
get_proxy函数,将不会执行验证码回调函数
API
get_official(official_id)
- official_id: 微信号
- 返回
Official对象或None
search_officials(keyword, pages=1, begin_page=1)
- keyword: 搜索关键字
- pages: 获取页面数量
- begin_page: 起始页
- 返回
Official-Generator对象
search_articles(keyword, pages=1, begin_page=1)
- keyword: 搜索关键字
- pages: 获取页面数量
- begin_page: 起始页
- 返回
Article-Generator对象
get_hot_articles(pages=2, article_type=0)
- pages: 获取页面数量
- article_type: 文章类型
- 返回
Article-Generator对象
article_type 对照表
| 数值 | 类型 |
|---|---|
| 0 | 热门 |
| 1 | 搞笑 |
| 2 | 养生堂 |
| 3 | 私房话 |
| 4 | 八卦精 |
| 5 | 科技咖 |
| 6 | 财经迷 |
| 7 | 汽车控 |
| 8 | 生活家 |
| 9 | 时尚圈 |
| 10 | 育儿 |
| 11 | 旅游 |
| 12 | 职场 |
| 13 | 美食 |
| 14 | 历史 |
| 15 | 教育 |
| 16 | 星座 |
| 17 | 体育 |
| 18 | 军事 |
| 19 | 游戏 |
| 20 | 萌宠 |
Article
| 属性 | 返回类型 | 说明 |
|---|---|---|
| url | str | 链接 |
| title | str | 标题 |
| date | str | 发布日期 |
| image_url | str | 图片链接 |
| digest | str | 文章概述 |
| official_url | str | 公众号链接 |
| official_name | str | 公众号名称 |
| save_article(save_path='.') | None | 保存文章为 Markdown 文件(save_path: 保存路径) |
| items() | list | 返回可遍历的(键, 值) 元组数组 |
| get_html() | str | 返回文章html |
Official
| 属性 | 返回类型 | 说明 |
|---|---|---|
| url | str | 链接 |
| official_id | str | 微信号 |
| name | str | 公众号名称 |
| avatar_url | str | 公众号头像链接 |
| qr_code_url | str | 公众号二维码链接 |
| profile_desc | str | 公众号简介 |
| status | tuple | 公众号每月状态, (每月发文数, 每月访问数) |
| recent_article | Article | 最新文章 Article 实例 |
| articles | [Article] | 公众号文章 Article 实例数组 |
| authenticate | str | 认证 |
| from_url(url) | Official | 类方法, 通过公众号链接生成 Official 实例 |
| items() | list | 返回可遍历的(键, 值) 元组数组 |
Metadata
Release files for sgwc 2019.5.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| sgwc-2019.5.4.tar.gz | 8.0 kB | Without provenance | Details for sgwc-2019.5.4.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| sgwc-2019.5.4-py3-none-any.whl | Python 3 | none | any | Details for sgwc-2019.5.4-py3-none-any.whl |
Total release size: 18.4 kB
Release files / sgwc-2019.5.4.tar.gz
| Download URL | sgwc-2019.5.4.tar.gz |
|---|---|
| Size | 8.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ff3900fb33c0c51b43048222c36037b170ec3ebdfea54c0f03585bcf2814cb5b
|
|
BLAKE2b-256 checksum How to use checksums |
3b5dcf559acc42cee15a11e1458f38d6deb4d86277341aefaf5fe6cd6046c0fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.7.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.5
|
Release files / sgwc-2019.5.4-py3-none-any.whl
| Download URL | sgwc-2019.5.4-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
91910379a3ccf728e850d10e52fae8a01f4ae250f339c4916cc75811070a8be7
|
|
BLAKE2b-256 checksum How to use checksums |
50a7aaaa2702ceeedeff529c702309a85e9982f93e119ceba987b2bd2b97fce7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.7.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.5
|
Security for sgwc 2019.5.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.