V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
seaify
V2EX  ›  问与答

scrapy 抓取 angular 网站,有什么好方法吗,很多地址都是 ng-click 这种形式,没有 href, 或者 ng-href

  •  
  •   seaify · 2016-08-14 22:41:15 +08:00 · 2428 次点击
    这是一个创建于 3001 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题.

    5 条回复    2016-08-15 10:01:38 +08:00
    Pastsong
        1
    Pastsong  
       2016-08-14 22:47:08 +08:00
    直接抓 API 不就好了
    seaify
        2
    seaify  
    OP
       2016-08-14 23:07:50 +08:00
    @Pastsong

    恩,取 api 是一种考虑方式,就变成了,构造 api 的可能输入参数了。

    而 scrapy ,只需要管正则表达式的形式,提取合适的路径就可以了,只是碰到 angular 这种,传统的方法失效,非得走 scrapy 的话,还得套个无头浏览器,感觉那样性能也慢了
    bdbai
        3
    bdbai  
       2016-08-14 23:58:15 +08:00 via Android
    为什么思路要局限在 Scrapy 上呢,直接抓网络请求的话能快速解决很多问题。
    xujialiang
        4
    xujialiang  
       2016-08-15 08:39:09 +08:00 via iPhone
    后端渲染的,只能解析 html ,前后端分离的,就抓 api ,抓 api ,比解析 html 省事啊~~~
    seaify
        5
    seaify  
    OP
       2016-08-15 10:01:38 +08:00
    恩,会去直接使用 api ,用 scrapy ,只是会把 api 的列表放进去,使用 scrapy 的并发,延时,中间件机制,比如放一个代理中间件, user agent 随机切换中间件,但是不会去解析 html 了,前后端分离后,页面上的数据,很多也不再是传统后端渲染时,有特定的 clas 或 id 了,不方便提取,另外前端变化可能会更快了,毕竟分离出来了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2713 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 08:27 · PVG 16:27 · LAX 01:27 · JFK 04:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.