CNode

爬虫技术中,页面中含有大量ajax请求的页面要怎么处理?

问答
Tthink2011发布于11 年前最后回复9 年前14 回复17638 浏览0 收藏

例如angular.js开发的站点,静态页面中的数据只是一些 {{}} 这样的字符,只有经过ajax请求并渲染后才有真实的数据。

这种情况该如何处理?

查看回复

回复 (14)

M
microlv#1·11 年前

你好像搞错了吧..{{}}是放在模板里的, ajax的请求回来就是数据。然后才用数据替换掉{{}}的定义(这是angularjs做的事情)。

A
alsotang#2·11 年前

关键就是要让爬虫可以执行 js。这个问题我也没有很好解..不如直接去爬 ajax 接口?

Y
YikaJ#3·11 年前

我是直接访问那个Ajax接口拿数据的。

I
ierask#4·11 年前

用firebug测试ajax接口参数,爬虫时模拟ajax

I
ierask#5·11 年前
引用 alsotang关键就是要让爬虫可以执行 js。这个问题我也没有很好解..不如直接去爬 ajax 接口?

@alsotang 可以用Greasemonkey写脚本在页面上自动点击, 但是这要把抓取的页面传递到浏览器,ajax获取的数据再传到后台,爬虫有点像代理

A
airyland#6·11 年前

话说正确姿势是直接爬接口吧

H
haio#7·11 年前

爬接口,省时省电。。

V
violet-day#8·11 年前

显然直接爬接口

T
think2011#9·11 年前

真希望有一种可以直接模拟浏览器行为的爬虫技术。

S
struCoder#11·11 年前
引用 andyhu@think2011 phantomjs

@andyhu 我去,用phantomjs? 他处理每个搜索引擎的请求都是创建一个新的对象 不但耗费cpu还有内存。而且还不稳定,严重 情况下能让你的app直接crash。 你用过?你推荐这个?

J
joeylin#13·11 年前

angularjs 对百度的seo有人做过么?

参与回复
登录后即可参与回复。登录