一直混知乎,看了很多大神写的爬虫,手痒写了个相关的项目:ZhihuVAPI 既然是 Python 写的,那么第一要素就是优雅 这个项目的优雅体现在以下方面:
import ZhihuVAPI as zhihu
print(zhihu.Article('https://zhuanlan.zhihu.com/p/42381257').column.author.name)
开箱即用,默认使用 Chrome 的 Cookies 你不需要任何设置和登录,引用后直接使用
内容获取自由度高
获取列表的所有项
import ZhihuVAPI as zhihu
self=zhihu.People('iCheez')
for a in self.answers():
a:zhihu.Answer # 让 IDE 智能提示
print(a.excerpt)
获取列表的指定数量的项
import ZhihuVAPI as zhihu
self=zhihu.People('iCheez')
for a in self.answers(5):
a:zhihu.Answer # 让 IDE 智能提示
print(a.excerpt)
获取列表的从某处开始的指定数量的项
import ZhihuVAPI as zhihu
self=zhihu.People('iCheez')
for a in self.answers(count=5,start=50):
a:zhihu.Answer # 让 IDE 智能提示
print(a.excerpt)
获取列表的从某页开始的指定数量的项
import ZhihuVAPI as zhihu
self=zhihu.People('iCheez')
for a in self.answers(count=5,page=2):
a:zhihu.Answer # 让 IDE 智能提示
print(a.excerpt)
这些操作都只需要调整一两个参数就可以实现.
而且,ZhihuVAPI 支持以下三种初始化:
如果你看了有兴趣的话可以去我的 Github 主页看一下: https://github.com/CheezOne/ZhihuVAPI
1
coffeSlider 2018-08-19 00:22:17 +08:00 via Android 1
提个小建议,这种小东西就别发布了哈。
另外,据我所知,v2 一部人 (包括本人) 很嫌弃知乎的。 |
2
batnss 2018-08-19 00:26:52 +08:00 5
1L 给了-1 我给楼主加回来 逃~~
|
3
diggerdu 2018-08-19 00:38:04 +08:00 via iPhone 1
挺漂亮的
|
4
mingyun 2018-08-19 00:40:57 +08:00 1
ps:ZhihuVAPI 这个命名方式有点怪
|
6
Trim21 2018-08-19 01:56:10 +08:00 via Android
看楼主问了不少问题,终于看到成果了…
|
7
Trim21 2018-08-19 02:02:46 +08:00 via Android
最后智能提示的问题还没解决吗…
|
8
eastrd 2018-08-19 08:22:39 +08:00 via Android
很支持楼主,但有个问题,这个爬虫的设计有多 robust ?
另外代理和多线程方面有支持吗? |
9
ddzzhen 2018-08-19 08:31:25 +08:00 via Android
支持楼主,只要是原创的东西就挺好的
|
10
easylee 2018-08-19 08:45:53 +08:00 via Android
强!
|
11
llllllLllll 2018-08-19 08:46:08 +08:00 1
支持楼主,我觉着分享不论大小
|
12
yanzixuan 2018-08-19 09:15:59 +08:00
@coffeSlider 嫌弃+1, 但是知乎早期的一些回答还是不错的。
|
14
Cheez OP @eastrd 啥都没有这只是初成品哈哈哈,未来也不知道会不会完善地支持,所以我上面的爬虫加了个(?)
|
15
Cheez OP 挽尊
|
16
Cheez OP 挽尊*2
|
17
agagega 2018-08-19 10:59:54 +08:00 via iPhone
直接调从浏览器里摸索出来的知乎 API 是不是比查网页更容易被封?
|
18
toarya 2018-08-19 11:39:00 +08:00
可以的,能解密 chrome 的 cookie
|
19
noneface 2018-08-19 12:37:08 +08:00
pywin32? 只支持 Windows 吗?
|
25
lihongjie0209 2018-08-19 17:43:48 +08:00
```
class Question(Container): """知乎的问题对象""" def __init__(self, id): super().__init__(id, '问题', 'question') if 2 == 1: # 单纯为了编辑器能智能提示 self.question_type = '' self.created = '' self.updated_time = '' self.is_editable = '' self.is_reportable = '' self.allow_delete = '' self.admin_closed_comment = '' self.has_publishing_draft = '' self.answer_count = '' self.comment_count = '' self.follower_count = '' self.collapsed_answer_count = '' self.comment_permission = '' self.detail = '' self.editable_detail = '' self.status = '' self.relationship = '' self.topics = '' self.author = '' self.can_comment = '' self.suggest_edit = '' self.thumbnail_info = '' self.review_info = '' self.mute_info = '' ``` 6666 |
26
bpllzbh 2018-08-19 17:52:18 +08:00 1
顶一波吧 star 了
|
28
Cheez OP @lihongjie0209 没办法......只能这样了
|
29
viho 2018-08-19 19:49:27 +08:00
大神,您好,我是萌新,我想问问您,有接触过用 python 爬取 app 数据么
|
31
mingyun 2018-08-25 18:48:18 +08:00
|
32
jin6220 2018-09-06 17:55:17 +08:00
能导出一个人的所有回答么?
|