{"id":13488725,"url":"https://github.com/chyroc/WechatSogou","last_synced_at":"2025-03-28T01:37:31.074Z","repository":{"id":37359628,"uuid":"58372256","full_name":"chyroc/WechatSogou","owner":"chyroc","description":"基于搜狗微信搜索的微信公众号爬虫接口","archived":false,"fork":false,"pushed_at":"2023-11-15T14:23:21.000Z","size":4325,"stargazers_count":5914,"open_issues_count":83,"forks_count":1714,"subscribers_count":276,"default_branch":"master","last_synced_at":"2024-10-29T15:03:01.299Z","etag":null,"topics":["crawler","pypi","python","scrapy","sogou","wechat"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chyroc.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-09T11:43:25.000Z","updated_at":"2024-10-27T15:16:01.000Z","dependencies_parsed_at":"2023-02-17T15:01:13.579Z","dependency_job_id":"e71ff6d8-c50e-425c-aefa-e8e32d89cce5","html_url":"https://github.com/chyroc/WechatSogou","commit_stats":{"total_commits":230,"total_committers":13,"mean_commits":"17.692307692307693","dds":"0.32173913043478264","last_synced_commit":"45731524c1e43925c61a340694774a0d022b895f"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyroc%2FWechatSogou","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyroc%2FWechatSogou/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyroc%2FWechatSogou/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyroc%2FWechatSogou/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chyroc","download_url":"https://codeload.github.com/chyroc/WechatSogou/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222333976,"owners_count":16968058,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crawler","pypi","python","scrapy","sogou","wechat"],"created_at":"2024-07-31T18:01:20.761Z","updated_at":"2025-03-28T01:37:31.067Z","avatar_url":"https://github.com/chyroc.png","language":"Python","readme":"基于搜狗微信搜索的微信公众号爬虫接口\n===\n\n[![Build Status](https://travis-ci.org/Chyroc/WechatSogou.svg?branch=master)](https://github.com/Chyroc/WechatSogou)\n[![PyPI version](https://badge.fury.io/py/wechatsogou.svg)](https://github.com/Chyroc/WechatSogou)\n[![PyPI](https://img.shields.io/pypi/wheel/wechatsogou.svg)](https://github.com/Chyroc/WechatSogou)\n[![py27,py35,py36](https://img.shields.io/pypi/pyversions/wechatsogou.svg)](https://github.com/Chyroc/WechatSogou)\n[![PyPI](https://img.shields.io/pypi/l/wechatsogou.svg)](https://github.com/Chyroc/WechatSogou)\n\n我的另外一个作品: https://github.com/chyroc/lark ，基于代码生成的 Lark/飞书 Go SDK，欢迎 star 。\n\n![ws_api.get_gzh_info('南航青年志愿者')](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/get_gzh_info.png)\n\n```\n __        __        _           _   ____\n \\ \\      / /__  ___| |__   __ _| |_/ ___|  ___   __ _  ___  _   _\n  \\ \\ /\\ / / _ \\/ __| '_ \\ / _` | __\\___ \\ / _ \\ / _` |/ _ \\| | | |\n   \\ V  V /  __/ (__| | | | (_| | |_ ___) | (_) | (_| | (_) | |_| |\n    \\_/\\_/ \\___|\\___|_| |_|\\__,_|\\__|____/ \\___/ \\__, |\\___/ \\__,_|\n                                                 |___/\n```\n\n# 项目简介\n基于搜狗微信搜索的微信公众号爬虫接口，可以扩展成基于搜狗搜索的爬虫\n\n如果有问题，请提issue\n\n[CHANGELOG](./CHANGELOG.md)\n\n# 交流分享\n\n- QQ群（只需加一个）\n  - 一群 132955136（已满）\n  - 二群 819084985\n\n- 微信群\n\n\n# 赞助作者\n甲鱼说，咖啡是灵魂的饮料，买点咖啡\n\n[谢谢这些人的☕️](./coffee.md)\n\n支付宝扫码大家一起领红包：\n\n\u003cimg src=\"https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/alipay_hongbao.png\" width=\"250\" /\u003e\n\n或者直接转账：\n\n\u003cimg src=\"https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/pay_wechat.jpg\" width=\"250\" /\u003e\u003cimg src=\"https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/pay_ali.jpg\" width=\"250\" /\u003e\n\n\n# 问题集锦\n    Q:没有得到原始文章url / 提示链接已经过期？\n    A:微信屏蔽此接口，请在临时链接有效期内保存文章内容。\n\n    Q:获取文章只能10篇？\n    A:是的，仅显示最近10条群发。\n\n    Q:使用的是python 2 还是 3？\n    A:都支持，若出错，请报BUG。\n\n# 安装\n```\npip install wechatsogou --upgrade\n```\n\n# 使用\n\n### 初始化 API\n\n```python\nimport wechatsogou\n\n# 可配置参数\n\n# 直连\nws_api = wechatsogou.WechatSogouAPI()\n\n# 验证码输入错误的重试次数，默认为1\nws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)\n\n# 所有requests库的参数都能在这用\n# 如 配置代理，代理列表中至少需包含1个 HTTPS 协议的代理, 并确保代理可用\nws_api = wechatsogou.WechatSogouAPI(proxies={\n    \"http\": \"127.0.0.1:8888\",\n    \"https\": \"127.0.0.1:8888\",\n})\n\n# 如 设置超时\nws_api = wechatsogou.WechatSogouAPI(timeout=0.1)\n```\n\n\n### 获取特定公众号信息 - get_gzh_info\n\n![ws_api.get_gzh_info('南航青年志愿者')](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/get_gzh_info.png)\n\n- 使用\n```\nIn [5]: import wechatsogou\n  ...:\n  ...: ws_api =wechatsogou.WechatSogouAPI()\n  ...: ws_api.get_gzh_info('南航青年志愿者')\n  ...:\nOut[5]:\n{\n  'authentication': '南京航空航天大学',\n  'headimage': 'http://img01.sogoucdn.com/app/a/100520090/oIWsFt1tmWoG6vO6BcsS7St61bRE',\n  'introduction': '南航大志愿活动的领跑者,为你提供校内外的志愿资源和精彩消息.',\n  'post_perm': 26,\n  'view_perm': 1000,\n  'profile_url': 'http://mp.weixin.qq.com/profile?src=3\u0026timestamp=1501140102\u0026ver=1\u0026signature=OpcTZp20TUdKHjSqWh7m73RWBIzwYwINpib2ZktBkLG8NyHamTvK2jtzl7mf-VdpE246zXAq18GNm*S*bq4klw==',\n  'qrcode': 'http://mp.weixin.qq.com/rr?src=3\u0026timestamp=1501140102\u0026ver=1\u0026signature=-DnFampQflbiOadckRJaTaDRzGSNfisIfECELSo-lN-GeEOH8-XTtM*ASdavl0xuavw-bmAEQXOa1T39*EIsjzxz30LjyBNkjmgbT6bGnZM=',\n  'wechat_id': 'nanhangqinggong',\n  'wechat_name': '南航青年志愿者'\n}\n```\n\n- 返回数据结构\n```python\n{\n    'profile_url': '',  # 最近10条群发页链接\n    'headimage': '',  # 头像\n    'wechat_name': '',  # 名称\n    'wechat_id': '',  # 微信id\n    'post_perm': int,  # 最近一月群发数\n    'view_perm': int,  # 最近一月阅读量\n    'qrcode': '',  # 二维码\n    'introduction': '',  # 简介\n    'authentication': ''  # 认证\n}\n```\n\n### 搜索公众号\n\n![ws_api.search_gzh('南京航空航天大学')](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/search_gzh.png)\n\n- 使用\n```\nIn [6]: import wechatsogou\n   ...:\n   ...: ws_api =wechatsogou.WechatSogouAPI()\n   ...: ws_api.search_gzh('南京航空航天大学')\n   ...:\nOut[6]:\n[\n  {\n    'authentication': '南京航空航天大学',\n    'headimage': 'http://img01.sogoucdn.com/app/a/100520090/oIWsFt1MvjqspMDVvZjpmxyo36sU',\n    'introduction': '南京航空航天大学官方微信',\n    'post_perm': 0,\n    'view_perm': 0,\n    'profile_url': 'http://mp.weixin.qq.com/profile?src=3\u0026timestamp=1501141990\u0026ver=1\u0026signature=S-7U131D3eQERC8yJGVAg2edySXn*qGVi5uE8QyQU034di*2mS6vGJVnQBRB0It9t9M-Qn7ynvjRKZNQrjBMEg==',\n    'qrcode': 'http://mp.weixin.qq.com/rr?src=3\u0026timestamp=1501141990\u0026ver=1\u0026signature=Tlp-r0AaBRxtx3TuuyjdxmjiR4aEJY-hjh0kmtV6byVu3QIQYiMlJttJgGu0hwtZMZCCntdfaP5jD4JXipTwoGecAze8ycEF5KYZqtLSsNE=',\n    'wechat_id': 'NUAA_1952',\n    'wechat_name': '南京航空航天大学'\n  },\n  {\n    'authentication': '南京航空航天大学',\n    'headimage': 'http://img01.sogoucdn.com/app/a/100520090/oIWsFtwVmjdK_57vIKeMceGXF5BQ',\n    'introduction': '南京航空航天大学团委官方微信平台',\n    'post_perm': 0,\n    'view_perm': 0,\n    'profile_url': 'http://mp.weixin.qq.com/profile?src=3\u0026timestamp=1501141990\u0026ver=1\u0026signature=aXFQrSDOiZJHedlL7vtAkvFMckxBmubE9VGrVczTwS601bOIT5Nrr8Pcgs6bQ-oEd6jdQ0aK5WCQjNwMAhJnyQ==',\n    'qrcode': 'http://mp.weixin.qq.com/rr?src=3\u0026timestamp=1501141990\u0026ver=1\u0026signature=7Cpbd9CVQsXJkExRcU5VM6NuyoxDQQfVfF7*CGI-PTR0y6stHPtdSDqzAzvPMWz67Xz9IMF2TDfu4Cndj5bKxlsFh6wGhiLH0b9ZKqgCW5k=',\n    'wechat_id': 'nuaa_tw',\n    'wechat_name': '南京航空航天大学团委'\n  },\n ...\n]\n```\n\n- 数据结构\n\nlist of dict, dict:\n\n```python\n{\n    'profile_url': '',  # 最近10条群发页链接\n    'headimage': '',  # 头像\n    'wechat_name': '',  # 名称\n    'wechat_id': '',  # 微信id\n    'post_perm': int,  # 最近一月群发数\n    'view_perm': int,  # 最近一月阅读量\n    'qrcode': '',  # 二维码\n    'introduction': '',  # 介绍\n    'authentication': ''  # 认证\n}\n```\n\n### 搜索微信文章\n\n![ws_api.search_article('南京航空航天大学')](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/search_article.png)\n\n- 使用\n```\nIn [7]: import wechatsogou\n   ...:\n   ...: ws_api =wechatsogou.WechatSogouAPI()\n   ...: ws_api.search_article('南京航空航天大学')\n   ...:\nOut[7]:\n[\n  {\n    'article': {\n      'abstract': '【院校省份】江苏【报名时间】4月5日截止【考试时间】6月10日-11日南京航空航天大学2017年自主招生简章南京航空航天大学2017...',\n      'imgs': ['http://img01.sogoucdn.com/net/a/04/link?appid=100520033\u0026url=http://mmbiz.qpic.cn/mmbiz_png/P07yicBRJfC71QB3lREx4J4x34QOibGaia5BkiaaiaiaibicWkTBULou9R08K6FaxlUA1RFBFWCmpO1Lepk7ZcXK45vguQ/0?wx_fmt=png'],\n      'time': 1490270644,\n      'title': '南京航空航天大学2017年自主招生简章',\n      'url': 'http://mp.weixin.qq.com/s?src=3\u0026timestamp=1501142580\u0026ver=1\u0026signature=hRMlQOLQpu4BNhBACavusZdmk**D65qHyz5LWDq1lPjVcm7*iiBS0l7Pq40h0fiCX*bZ8vSMLzAMDNzELYFKIQ7mND0-7cQi-N0BtfTBql*CQdsHun-GtaYEqRva6Ukwce3gZh46SXJzo90kyZ3dwVYl6*589bGDIzG6JTGfpxI='\n    },\n    'gzh': {\n      'headimage': 'http://wx.qlogo.cn/mmhead/Q3auHgzwzM5kiawibor6ABhnibMYnOADvqdcrl5XWiaFfM5mGYZ8cUica6A/0',\n      'isv': 0,\n      'profile_url': 'http://mp.weixin.qq.com/profile?src=3\u0026timestamp=1501142580\u0026ver=1\u0026signature=dVkDdcFr1suL1WHdCOJj7pwZhG9W*APi-j5kRtS09ccv-WID-zNs0ecDiiz1wwE7qbNSk5HBL*ffpyVXcF0fFQ==',\n      'wechat_name': '自主招生在线'\n    }\n  },\n...\n]\n```\n\n- 数据结构\n\nlist of dict, dict:\n```python\n{\n    'article': {\n        'title': '',  # 文章标题\n        'url': '',  # 文章链接\n        'imgs': '',  # 文章图片list\n        'abstract': '',  # 文章摘要\n        'time': int  # 文章推送时间 10位时间戳\n    },\n    'gzh': {\n        'profile_url': '',  # 公众号最近10条群发页链接\n        'headimage': '',  # 头像\n        'wechat_name': '',  # 名称\n        'isv': int,  # 是否加v 1 or 0\n    }\n}\n```\n\n### 解析最近文章页 - get_gzh_article_by_history\n\n![ws_api.search_article('南京航空航天大学')](https://raw.githubusercontent.com/chyroc/wechatsogou/master/screenshot/get_gzh_article_by_history.png)\n\n- 使用\n```\nIn [1]: import wechatsogou\n   ...:\n   ...: ws_api =wechatsogou.WechatSogouAPI()\n   ...: ws_api.get_gzh_article_by_history('南航青年志愿者')\n   ...:\nOut[1]:\n{\n  'article': [\n    {\n      'abstract': '我们所做的，并不能立马去改变什么——\\n但千里之行，绿勤行永不止步。\\n我们不会就此止步，之后我们又将再出发。\\n 民勤，再见。\\n绿勤行，不再见。',\n      'author': '',\n      'content_url': 'http://mp.weixin.qq.com/s?timestamp=1501143158\u0026src=3\u0026ver=1\u0026signature=B-*tqUrFyO7OqpFeJZwTA7JJtsHpz6BgC8ugyfgpOnyWLtPb85R5Zmu0JuZRbZKG72x4bQjMCcsfA5mC3GSSOPbYd-9tzvTgmroGRmc4Tzk8090KCiEu6EjA0YMHeytWJWpxr51M2FUYQhTWJ01pTmNnXLVAG6Ex6AG52uvvmQA=',\n      'copyright_stat': 100,\n      'cover': 'http://mmbiz.qpic.cn/mmbiz_jpg/icFYWMxnmxHDYgXNjAle7szYLgQmicbaQlb1eVFuwp2vxEu5eNVwYacaHah2N5W8dKAm725vxv5aM6DFlM59Wftg/0?wx_fmt=jpeg',\n      'datetime': 1501072594,\n      'fileid': 502326199,\n      'main': 1,\n      'send_id': 1000000306,\n      'source_url': '',\n      'title': '绿勤行——不说再见',\n      'type': '49'\n    },\n    {\n      'abstract': '当时不杂，过往不恋，志愿不老，我们不散！',\n      'author': '',\n      'content_url': 'http://mp.weixin.qq.com/s?timestamp=1501143158\u0026src=3\u0026ver=1\u0026signature=B-*tqUrFyO7OqpFeJZwTA7JJtsHpz6BgC8ugyfgpOnyWLtPb85R5Zmu0JuZRbZKG72x4bQjMCcsfA5mC3GSSOGUrM*jg*EP1jU-Dyf2CVqmPnOgBiET2wlitek4FcRbXorAswWHm*1rqODcN52NtfKD-OcRTazQS*t5SnJtu3ZA=',\n      'copyright_stat': 100,\n      'cover': 'http://mmbiz.qpic.cn/mmbiz_jpg/icFYWMxnmxHCoY44nPUXvkSgpZI1LaEsZfkZvtGaiaNW2icjibCp6qs93xLlr9kXMJEP3z1pmQ6TbRZNicHibGzRwh1w/0?wx_fmt=jpeg',\n      'datetime': 1500979158,\n      'fileid': 502326196,\n      'main': 1,\n      'send_id': 1000000305,\n      'source_url': '',\n      'title': '有始有终  |  2016-2017年度环境保护服务部工作总结',\n      'type': '49'\n    },\n  ...\n  ],\n  'gzh': {\n    'authentication': '南京航空航天大学',\n    'headimage': 'http://wx.qlogo.cn/mmhead/Q3auHgzwzM4xV5PgPjK5XoPaaQoxnWJAFicibMvPAnsoybawMBFxua1g/0',\n    'introduction': '南航大志愿活动的领跑者，为你提供校内外的志愿资源和精彩消息。',\n    'wechat_id': 'nanhangqinggong',\n    'wechat_name': '南航青年志愿者'\n  }\n}\n```\n- 数据结构\n```python\n{\n    'gzh': {\n        'wechat_name': '',  # 名称\n        'wechat_id': '',  # 微信id\n        'introduction': '',  # 简介\n        'authentication': '',  # 认证\n        'headimage': ''  # 头像\n    },\n    'article': [\n        {\n            'send_id': int,  # 群发id，注意不唯一，因为同一次群发多个消息，而群发id一致\n            'datetime': int,  # 群发datatime 10位时间戳\n            'type': '',  # 消息类型，均是49（在手机端历史消息页有其他类型，网页端最近10条消息页只有49），表示图文\n            'main': int,  # 是否是一次群发的第一次消息 1 or 0\n            'title': '',  # 文章标题\n            'abstract': '',  # 摘要\n            'fileid': int,  #\n            'content_url': '',  # 文章链接\n            'source_url': '',  # 阅读原文的链接\n            'cover': '',  # 封面图\n            'author': '',  # 作者\n            'copyright_stat': int,  # 文章类型，例如：原创啊\n        },\n        ...\n    ]\n}\n\n```\n\n### 解析 首页热门 页 - get_gzh_article_by_hot\n\n![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)\n\n- 使用\n```\nIn [1]: from pprint import pprint\n   ...: from wechatsogou import WechatSogouAPI, WechatSogouConst\n   ...:\n   ...: ws_api = WechatSogouAPI()\n   ...: gzh_articles = ws_api.get_gzh_article_by_hot(WechatSogouConst.hot_index.food)\n   ...: for i in gzh_articles:\n   ...:     pprint(i)\n   ...:\n{\n    'article': {\n        'abstract': '闷热的夏天有什么事情能比吃上凉凉的甜品更惬意的呢？快一起动手做起来吧，简单方便，放冰箱冻一冻，那感觉~橙汁蒸木瓜木瓜1个（300-400克左右），橙子4个，枫糖浆20克（如果家里没有，也可以用蜂蜜、炼乳等代替），椰果适量。做法1．用削皮',\n        'main_img': 'http://img01.sogoucdn.com/net/a/04/link?appid=100520033\u0026url=http%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2Fw9UGwFPia7QTUIadPibgW8OFkqf1ibR40xicKfzofRS0sDpaFp3CG0jkPyQKeXl44TXswztW1SJnic7tmCibjB8rIIGw%2F0%3Fwx_fmt%3Djpeg',\n        'open_id': 'oIWsFty9hHVI9F10amtzx5TOWIq8',\n        'time': 1501325220,\n        'title': '夏日甜品制作方法，不收藏后悔哦!',\n        'url': 'http://mp.weixin.qq.com/s?src=3\u0026timestamp=1501328525\u0026ver=1\u0026signature=n9*oX0k4YbNFhNMsOjIekYrsha44lfBSCbG9jicAbGYrWNN8*48NzpcaHdxwUnC12syY5-ZxwcBfiJlMzdbAwWKlo26EW14w2Ax*gjLVlOX-AGXB4443obZ-GK0pw*AFZAGZD8sI4AFBZSZpyeaxN4sS7cpynxdIuw6S2h*--LI='\n    },\n    'gzh': {\n        'headimage': 'http://img03.sogoucdn.com/app/a/100520090/oIWsFty9hHVI9F10amtzx5TOWIq8',\n        'wechat_name': '甜品烘焙制作坊'\n    }\n}\n...\n...\n```\n\n- 数据结构\n```python\n{\n    'gzh': {\n        'headimage': str,  # 公众号头像\n        'wechat_name': str,  # 公众号名称\n    },\n    'article': {\n        'url': str,  # 文章临时链接\n        'title': str,  # 文章标题\n        'abstract': str,  # 文章摘要\n        'time': int,  # 推送时间，10位时间戳\n        'open_id': str,  # open id\n        'main_img': str  # 封面图片\n    }\n}\n```\n\n### 获取关键字联想词\n- 使用\n```\nIn [1]: import wechatsogou\n   ...:\n   ...: ws_api =wechatsogou.WechatSogouAPI()\n   ...: ws_api.get_sugg('高考')\n   ...:\nOut[1]:\n['高考e通',\n '高考专业培训',\n '高考地理俱乐部',\n '高考志愿填报咨讯',\n '高考报考资讯',\n '高考教育',\n '高考早知道',\n '高考服务志愿者',\n '高考机构',\n '高考福音']\n```\n\n- 数据结构\n\n关键词列表\n```python\n['a', 'b', ...]\n```\n---\n\n# TODO\n- [x] ~~相似文章的公众号获取~~\n- [ ] 主页热门公众号获取\n- [ ] 文章详情页信息\n- [x] ~~所有类型的解析~~\n- [ ] 验证码识别\n- [ ] 接入爬虫框架\n- [x] 兼容py2\n\n---\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchyroc%2FWechatSogou","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchyroc%2FWechatSogou","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchyroc%2FWechatSogou/lists"}