1
cdwyd 2016-01-03 16:54:21 +08:00
f12,点一下按钮,看请求
|
3
just1 2016-01-03 17:03:20 +08:00 via Android
其实跟 python 一点关系都没有,应该到问与答
|
4
just1 2016-01-03 17:03:58 +08:00 via Android
分析加载更多的请求,模拟就可以了
|
5
bdbai 2016-01-03 17:07:44 +08:00 via iPhone
f12,点一下按钮,看请求
|
6
vmebeh 2016-01-03 17:08:39 +08:00
其实是 js 监听页面滚动,当滚动到页面底部时 ajax 请求更多内容添加到 dom 树
F12 查看 XHR 可破 |
7
saberlion 2016-01-03 17:45:44 +08:00 via Android
爬知乎有很多程序
|
8
woorz 2016-01-03 17:58:07 +08:00
知科有 api 的吧
|
10
ianisme 2016-01-03 19:44:53 +08:00
抓他们的 APP 看看
|
11
cheneydog 2016-01-03 19:47:31 +08:00
ajax 的更好做了
|
12
Caratpine 2016-01-03 19:57:58 +08:00
补充一点 HTTP 协议相关的知识,如 1 , 6 楼所说打开开发者工具,看看异步加载时,发生的 HTTP 请求。
![zhihu]( http://i4.tietuku.com/e6bd5419681e5fca.png) |
14
geekqiao 2016-01-03 20:31:51 +08:00 1
首页的内容是 post 到“ https://www.zhihu.com/node/TopStory2FeedList ”,
带有表单数据: params , method 和_xsrf 。 |
15
7sDream 2016-01-03 20:46:28 +08:00
https://github.com/7sDream/zhihu-py3
随便看一个需要异步加载的内容是咋获取的。 比如 answer 的 upvoter 函数,稍微看一下应该就会啦。 (另外,「不想看别人写的」这个想法稍微有点走偏了呀~~其实提问和看代码没有本质不同呐) |
16
wowpanda OP @7sDream 哈哈,我的意思是想尽量通过提问或者资料来思考怎么写,要不然一上来就看别人写的代码总觉得是不是偷懒的行为。另外,我也是卡在了爬主页上,所以就没有考虑去看 upvoter 是怎么弄得,^_^)
|
17
wd0g 2016-01-03 22:52:10 +08:00
一般的都有规,你越往下拉某个参数的值越大或越小
自己多拉几次页面,对比下 URL 就知道了 |
18
lixiaohan 2016-01-04 10:10:41 +08:00
都是有规则的请求 应该是 offset 变化 你可以模拟一下
|
19
waner55 2016-01-06 11:38:24 +08:00
|