{ "info": { "author": "CheezOne", "author_email": "mycheez2000@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# ZhihuVAPI:\u4f18\u96c5\u5730\u73a9\u77e5\u4e4e\n\n## \u7b80\u4ecb\n\n### ZhihuVAPI\u662f\u4ec0\u4e48?\n\nZhihuVAPI \u662f\u4e00\u4e2a\u53ef\u4ee5\u8ba9\u4f60\u4ee5\u4e00\u79cd\u4f18\u96c5\u7684\u5f62\u5f0f\u8c03\u7528\u77e5\u4e4e\u6570\u636e\u7684 Python \u5305.\n\n### \u600e\u4e48\u5b89\u88c5\u6216\u8005\u66f4\u65b0 ZhihuVAPI?\n\n`pip install -U ZhihuVAPI`\n\n## \u4f7f\u7528\n\n### \u5f15\u7528 ZhihuVAPI\n\n`import ZhihuVAPI as zhihu`\n\n\u540e\u9762\u7684`as zhihu`\u662f\u522b\u79f0\u7684\u610f\u601d,\u4fbf\u4e8e\u8f93\u5165.\n\n### \u914d\u7f6e\u7528\u6237\n\n\u914d\u7f6e\u811a\u672c\u4f7f\u7528\u7684 `cookies`,\u4e00\u5171\u6709\u4e24\u79cd\u65b9\u6cd5.\n\n1. \u4ec0\u4e48\u90fd\u4e0d\u7ba1,\u811a\u672c\u4f1a\u9ed8\u8ba4\u8bfb\u53d6 Chrome \u6216\u8005 Cent \u7684 cookies.\u5982\u679c\u4f60\u662f\u5176\u4ed6\u7c7b Chrome \u7684\u6d4f\u89c8\u5668,\u4f60\u53ef\u4ee5\u5728`config.py`\u7684`cookiepath`\u81ea\u5b9a\u4e49cookies\u6587\u4ef6\u7684\u8def\u5f84.\n2. \u5728`config.py`\u7981\u7528`is_use_chrome_cookies`\u540e,\u4f60\u53ef\u4ee5\u5728\u91cc\u9762\u81ea\u5b9a\u4e49`headers`.\n\n### \u8bfb\u53d6\u81ea\u5df1\n\n```Python\nimport ZhihuVAPI as zhihu\nself=zhihu.self\nprint(f'\u6211\u7684\u540d\u5b57\u53eb{self.name},\u76ee\u524d\u83b7\u5f97\u4e86{self.voteup_count}\u4e2a\u8d5e\u540c,{self.favorited_count}\u4e2a\u6536\u85cf,\u6709{self.followers_count}\u4e2a\u7c89\u4e1d.\u63d0\u51fa\u4e86{self.question_count}\u4e2a\u95ee\u9898,\u64b0\u5199\u4e86{self.answer_count}\u4e2a\u7b54\u6848,{self.articles_count}\u7bc7\u6587\u7ae0,\u62e5\u6709{self.columns_count}\u4e2a\u4e13\u680f.')\n\n```\n\u8f93\u51fa:\n```\n\u6211\u7684\u540d\u5b57\u53eb\u4ee5\u8304\u4e4b\u540d,\u76ee\u524d\u83b7\u5f97\u4e8614480\u4e2a\u8d5e\u540c,7654\u4e2a\u6536\u85cf,\u6709876\u4e2a\u7c89\u4e1d.\u63d0\u51fa\u4e8624\u4e2a\u95ee\u9898,\u64b0\u5199\u4e8649\u4e2a\u7b54\u6848,7\u7bc7\u6587\u7ae0,\u62e5\u67092\u4e2a\u4e13\u680f.\n```\n\n### \u57fa\u672c\u64cd\u4f5c\n\nZhihuVAPI \u652f\u6301\u4ee5\u4e0b\u4e09\u79cd\u521d\u59cb\u5316:\n1. **URL \u521d\u59cb\u5316**:`zhihu.People('https://www.zhihu.com/people/iCheez/activities')`\n2. **ID \u521d\u59cb\u5316**:`zhihu.People('e4f87c3476a926c1e2ef51b4fcd18fa3')`\n3. **URL_Token \u521d\u59cb\u5316(\u4ec5\u5bf9\u7528\u6237\u5bf9\u8c61\u6709\u6548)**:`zhihu.People('iCheez')`\n\n\u5bf9\u4e8e\u70b9\u8d5e\u5217\u8868,\u7c89\u4e1d\u5217\u8868\u7b49\u6570\u636e,ZhihuVAPI\u652f\u6301\u4ee5\u4e0b\u65b9\u5f0f\u8c03\u7528:\n\n#### \u83b7\u53d6\u5217\u8868\u7684\u6240\u6709\u9879\n```Python\nimport ZhihuVAPI as zhihu\nself=zhihu.People('iCheez')\nfor a in self.answers():\n a:zhihu.Answer # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(a.excerpt)\n```\n\n#### \u83b7\u53d6\u5217\u8868\u7684\u6307\u5b9a\u6570\u91cf\u7684\u9879\n```Python\nimport ZhihuVAPI as zhihu\nself=zhihu.People('iCheez')\nfor a in self.answers(5):\n a:zhihu.Answer # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(a.excerpt)\n```\n\n\n#### \u83b7\u53d6\u5217\u8868\u7684\u4ece\u67d0\u5904\u5f00\u59cb\u7684\u6307\u5b9a\u6570\u91cf\u7684\u9879\n```Python\nimport ZhihuVAPI as zhihu\nself=zhihu.People('iCheez')\nfor a in self.answers(count=5,start=50):\n a:zhihu.Answer # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(a.excerpt)\n```\n\n#### \u83b7\u53d6\u5217\u8868\u7684\u4ece\u67d0\u9875\u5f00\u59cb\u7684\u6307\u5b9a\u6570\u91cf\u7684\u9879\n```Python\nimport ZhihuVAPI as zhihu\nself=zhihu.People('iCheez')\nfor a in self.answers(count=5,page=2):\n a:zhihu.Answer # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(a.excerpt)\n```\n\n### \u83b7\u53d6\u7b54\u6848\n\n```Python\nimport ZhihuVAPI as zhihu\na=zhihu.Answer('https://www.zhihu.com/question/31343133/answer/58763430')\nfor p in a.voters(count=5):\n p:zhihu.People # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(p.name)\n if p.is_waterman():\n print(f'{p.name} \u662f\u6c34\u519b')\nprint(f'\u8fd9\u4e2a\u5728 \"{a.question.title}\" \u4e0b\u7684\u56de\u7b54\u5f97\u5230\u4e86{a.voteup_count}\u4e2a\u8d5e\u540c,\u6211{\"\u5df2\u7ecf\u8d5e\u540c\u4e86\"if a.is_voting else \"\u8fd8\u6ca1\u6709\u8d5e\u540c\" }')\n\nfor c in a.comments():\n c:zhihu.Comment\n print(c.content)\na.down() #\u53cd\u5bf9\na.undown() #\u53d6\u6d88\u53cd\u5bf9(\u4ee5\u6b64\u7c7b\u63a8)\na.vote() # \u8d5e\u540c\na.thank() # \u611f\u8c22\n# a.collect([zhihu.Collection('\u4f60\u81ea\u5df1\u7684\u6536\u85cf\u5939 ID'),])\n\n```\n\u8f93\u51fa:\n```\n\u65e5\u5fd7\uff1a\u83b7\u53d6\u4ee5\u8304\u4e4b\u540d\u7684\u70b9\u8d5e\u5217\u8868\n\u5348\u591c\n\u6597\u6218\u80dc\u4f5b\nChern\n\u4e07\u94c6\u5de5\n\u8a00\u77e5\n\u8fd9\u4e2a\u7b54\u6848\u5728 \"\u4ee5\u4e0b\u8fd9\u7bc7\u6587\u7ae0\u5173\u4e8e\u300c\u56db\u5927\u53d1\u660e\u300d\u7684\u89c2\u70b9\u662f\u5426\u5ba2\u89c2\u3001\u51c6\u786e\uff1f\" \u4e0b\u7684\u56de\u7b54\u5f97\u5230\u4e86201\u4e2a\u8d5e\u540c,\u6211\u8fd8\u6ca1\u6709\u8d5e\u540c\n```\n\n\n### \u83b7\u53d6\u7528\u6237\n```Python\nimport ZhihuVAPI as zhihu\nperson = zhihu.People('zhihuadmin')\n\nfor p in person.followers(count=5): # \u7c89\u4e1d\n p: zhihu.People # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(p.name)\n\nfor a in person.answers(count=5): # \u7b54\u6848\n a: zhihu.Answer # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(a.voteup_count)\n\nfor ar in person.articles(count=5): #\u6587\u7ae0\n ar: zhihu.Article # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(ar.voteup_count)\n\nfor m in person.msgs(count=5): #\u79c1\u4fe1\n print(m)\n\nfor pin in person.pins(count=5): #\u60f3\u6cd5\n pin: zhihu.Pin # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(pin.voteup_count)\n\n\nperson.block() # \u5c4f\u853d\nperson.unblock() # \u53d6\u6d88\u5c4f\u853d(\u4ee5\u6b64\u7c7b\u63a8)\nperson.send('\u4f60\u597d,\u6211\u662f{zhihu.self.name}') # \u53d1\u9001\u79c1\u4fe1\n```\n\n### \u83b7\u53d6\u4e13\u680f\n```Python\nimport ZhihuVAPI as zhihu\ncolumn = zhihu.Column('cheezpython')\nprint(column.title)\nfor ar in column.articles():\n ar: zhihu.Article # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(f'{ar.title} \u4e00\u5171\u6709 {ar.voteup_count} \u4e2a\u8d5e')\n\n\nfor p in column.coauthors():\n p: zhihu.People # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(f'{p.name} \u4ed6\u6709 {p.voteup_count} \u4e2a\u8d5e')\n\ncolumn.follow() #\u5173\u6ce8\n\n```\n\n\n### \u83b7\u53d6\u6587\u7ae0\n```Python\nimport ZhihuVAPI as zhihu\nar=zhihu.Article('https://zhuanlan.zhihu.com/p/39747259')\nfor p in ar.voters(count=5):\n p:zhihu.People # \u8ba9 IDE \u667a\u80fd\u63d0\u793a\n print(p.name)\n if p.is_waterman():\n print(f'{p.name} \u662f\u6c34\u519b')\nprint(f'\u8fd9\u7bc7\u6587\u7ae0 \"{ar.title}\" \u5f97\u5230\u4e86{ar.voteup_count}\u4e2a\u8d5e\u540c,\u6211{\"\u5df2\u7ecf\u8d5e\u540c\u4e86\"if ar.is_voting else \"\u8fd8\u6ca1\u6709\u8d5e\u540c\" }')\n\nar.down() #\u53cd\u5bf9\nar.undown() #\u53d6\u6d88\u53cd\u5bf9(\u4ee5\u6b64\u7c7b\u63a8)\nar.vote() # \u8d5e\u540c\nar.thank() # \u611f\u8c22\n# ar.collect([zhihu.Collection('\u4f60\u81ea\u5df1\u7684\u6536\u85cf\u5939 ID'),])\n\n```\n\n### \u83b7\u53d6\u6536\u85cf\u5939\n```Python\nimport ZhihuVAPI as zhihu \nco = zhihu.Collection('https://www.zhihu.com/collection/62217998')\nprint(f'\u8fd9\u4e2a\u6536\u85cf\u5939\u7684\u540d\u5b57\u662f{co.title}')\nfor ct in co.contents(count=10):\n if ct.type == 'answer':\n print(f'{ct.content.excerpt}\\n') \n```\n\n\n### \u83b7\u53d6\u95ee\u9898\n```Python\nimport ZhihuVAPI as zhihu \n```\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/CheezOne/ZhihuVAPI", "keywords": "zhihu,network,http,crawler,JSON,api", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "ZhihuVAPI", "package_url": "https://pypi.org/project/ZhihuVAPI/", "platform": "any", "project_url": "https://pypi.org/project/ZhihuVAPI/", "project_urls": { "Homepage": "https://github.com/CheezOne/ZhihuVAPI" }, "release_url": "https://pypi.org/project/ZhihuVAPI/1.0.6/", "requires_dist": [ "requests (>=2.10.0)", "pywin32" ], "requires_python": "", "summary": "\u4f18\u96c5\u5730\u8c03\u7528\u77e5\u4e4e(zhihu.com)\u4e0a\u7684\u6570\u636e", "version": "1.0.6" }, "last_serial": 4268610, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "f4e6e78ec0b98fefe3029ece3815e67f", "sha256": "1b7ae4c89d1538c4d1e1bf50e8b7663cf1705809728540427eac1a3646457d77" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f4e6e78ec0b98fefe3029ece3815e67f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27613, "upload_time": "2018-08-18T11:51:23", "url": "https://files.pythonhosted.org/packages/c8/42/58fc5c3d816b1472459ad771b3e05cda80b0f05db315e1780ca795386fc5/ZhihuVAPI-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f22a1a4e5b36bb72042bb3fe1bd7b9d", "sha256": "ba7e8a159f21c2b810e3eeb9df32877a077fb7e464e4496fb5f22d6454066b59" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.0.tar.gz", "has_sig": false, "md5_digest": "2f22a1a4e5b36bb72042bb3fe1bd7b9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16378, "upload_time": "2018-08-18T06:00:53", "url": "https://files.pythonhosted.org/packages/66/0d/2947262a2a4047f74413984a6121b5e5301d84d753a2e8ccfeec04be0358/ZhihuVAPI-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "87f97a7006cf2a8fa4542cb53717951a", "sha256": "12ced9a4d8a96e60337c79ec90ec74a266c5ee3fe993dbe172dc7e3defb94f2d" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "87f97a7006cf2a8fa4542cb53717951a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27605, "upload_time": "2018-08-18T11:57:17", "url": "https://files.pythonhosted.org/packages/cc/1a/57975593f5cb28ba9dd02f1125b17e4fc02cd029f0cf08e842ab01366e5f/ZhihuVAPI-1.0.1-py2.py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "8867fc2006be1455106566cd07006722", "sha256": "5dab9efe08604ee80d9cd984081a29555d3b9e21619c992f49e252786fe3d669" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8867fc2006be1455106566cd07006722", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27639, "upload_time": "2018-08-18T16:04:17", "url": "https://files.pythonhosted.org/packages/3e/24/eb29a6abd10e2e7feca9092a895b6fde8b9df5c44a23bcce724679d5de7f/ZhihuVAPI-1.0.2-py2.py3-none-any.whl" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "be38a0621c8a6411b17f0b577a2ab3ce", "sha256": "efdf1ce660e661b94868614f50c77b8290424a9fbc1f5236cee256499c4535d0" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be38a0621c8a6411b17f0b577a2ab3ce", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27633, "upload_time": "2018-08-19T10:53:05", "url": "https://files.pythonhosted.org/packages/9d/15/13aabb8e17a35e3e4f28e425ae7cb33b587b3d37f1c88bfe5e2933115b48/ZhihuVAPI-1.0.3-py2.py3-none-any.whl" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "4e44108dcc186d4501ceb988a7fbfe65", "sha256": "289bbdd176c9d15c946e7b68d641ae8579b11d88a7da412e015b00f82af1a5f3" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4e44108dcc186d4501ceb988a7fbfe65", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27664, "upload_time": "2018-08-19T11:13:29", "url": "https://files.pythonhosted.org/packages/0e/1a/713161ffefd66b7ef53d9524e2655313368f19781d466aa00ce20ee47e56/ZhihuVAPI-1.0.4-py2.py3-none-any.whl" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "a77c52d99c392136ab89086b06042067", "sha256": "7026453e30e6ce13818ee5502a4c6024eb49375f22107012a0300f054671a014" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a77c52d99c392136ab89086b06042067", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27672, "upload_time": "2018-08-20T03:52:09", "url": "https://files.pythonhosted.org/packages/27/b4/0b921c5853d336dd693a9a7fde0a136b7a053938b8b9f22fe4081e7e3a4f/ZhihuVAPI-1.0.5-py2.py3-none-any.whl" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "5c0668024413af9c8db029df099ba617", "sha256": "f1e43cc98ff0adf488458ebe1bbb82981b078840e1e4acd35c61067323759f43" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5c0668024413af9c8db029df099ba617", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27701, "upload_time": "2018-09-13T12:32:58", "url": "https://files.pythonhosted.org/packages/29/03/757e2938480782985ab35fc7921276640c8d5e1dac57249a2fbef927b978/ZhihuVAPI-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cdfdca05c455766d91bcf9bd302e20d2", "sha256": "d457a71cf18d84f594a273bfed663ed149d00cbdf4d91f6faeccafe0f1fe41bb" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.6.tar.gz", "has_sig": false, "md5_digest": "cdfdca05c455766d91bcf9bd302e20d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21000, "upload_time": "2018-09-13T12:33:00", "url": "https://files.pythonhosted.org/packages/2d/74/7ebee588e2fa361aea5c9e5aeeda44d6998ecffb843de522fa12f669b78a/ZhihuVAPI-1.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5c0668024413af9c8db029df099ba617", "sha256": "f1e43cc98ff0adf488458ebe1bbb82981b078840e1e4acd35c61067323759f43" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5c0668024413af9c8db029df099ba617", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27701, "upload_time": "2018-09-13T12:32:58", "url": "https://files.pythonhosted.org/packages/29/03/757e2938480782985ab35fc7921276640c8d5e1dac57249a2fbef927b978/ZhihuVAPI-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cdfdca05c455766d91bcf9bd302e20d2", "sha256": "d457a71cf18d84f594a273bfed663ed149d00cbdf4d91f6faeccafe0f1fe41bb" }, "downloads": -1, "filename": "ZhihuVAPI-1.0.6.tar.gz", "has_sig": false, "md5_digest": "cdfdca05c455766d91bcf9bd302e20d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21000, "upload_time": "2018-09-13T12:33:00", "url": "https://files.pythonhosted.org/packages/2d/74/7ebee588e2fa361aea5c9e5aeeda44d6998ecffb843de522fa12f669b78a/ZhihuVAPI-1.0.6.tar.gz" } ] }