V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
smallQ
V2EX  ›  Python

如何爬取数据源 url 动态变化的网址?

  •  
  •   smallQ · 2018-05-05 20:35:41 +08:00 · 5152 次点击
    这是一个创建于 2174 天前的主题,其中的信息可能已经有所发展或是发生改变。

    无意间发现一个网站 七麦数据
    咦~这数据好像还蛮有意思的,尝试爬取一波。 这也太简单了吧,不就是 XHR 加载的嘛,数据都给我装好了 https://api.qimai.cn/rank/indexPlus/brand_id/2?analysis=dDB4Fi8wUEF1J2VAfndkQy8II0YHIn8WUT1xCVAEVlp5Rx4TAwpcGlENVFFLY11MEkoHRwQLVTxZARxUchVSBgpdBlFUUQEMDiMTBQ%3D%3D&brand=all&country=cn&device=iphone&genre=36&date=2018-05-05&page=1
    有个参数 analysis,这么大一串,怕是有问题,多请求几次,,果然,这个参数在变化,而且前面的链接也失效了 Q_Q..
    好吧,定位到这个文件夹 static.qimai.cn/static/js/app.5aed8c28e91d77a9f578.js ,,无奈 js 是个渣渣。。
    想问下这种网页的话,除了 selenium 和分析 js,还有没有什么方法?分析 js 的话,有没有什么小技巧?
    跪等大神分享

    16 条回复    2019-09-08 22:16:25 +08:00
    des
        1
    des  
       2018-05-05 20:38:55 +08:00 via Android
    还是上 selenium 吧
    smallQ
        2
    smallQ  
    OP
       2018-05-05 20:39:37 +08:00
    @des emmm...
    des
        3
    des  
       2018-05-05 20:46:57 +08:00 via Android
    @smallQ 之前做煎蛋的反加密,是把 js 下载下来,然后调用关键解密函数,手工分析加密太麻烦,而且指不定什么时候又改了
    locoz
        4
    locoz  
       2018-05-05 20:47:34 +08:00 via Android
    分析不了就 selenium 之类的吧
    smallQ
        5
    smallQ  
    OP
       2018-05-05 20:52:35 +08:00
    @des 好吧,tks
    lxy
        6
    lxy  
       2018-05-06 00:05:43 +08:00
    可以请教一下你的前端同事,这种分析对他们来说应该不难
    xiaobai987
        7
    xiaobai987  
       2018-05-07 08:56:31 +08:00
    你还别说 这网页挺复杂的 有时间分析下
    helloiac
        8
    helloiac  
       2018-05-07 10:33:53 +08:00
    无非是 js 中有个函数生成了一个加了时间戳的密钥,然后过几分钟失效,把 js 格式化一下找找,应该不难定位函数。
    yixiugegegege
        9
    yixiugegegege  
       2018-09-17 17:48:46 +08:00
    问一下 我连 analysis 参数都搜不到了,请问下怎么搜到这个参数名呢
    smallQ
        10
    smallQ  
    OP
       2018-09-17 18:08:02 +08:00
    @yixiugegegege 全局搜索,ctrl+shift+f
    smallQ
        11
    smallQ  
    OP
       2018-09-17 18:08:58 +08:00
    @yixiugegegege 好久没碰了,不知道页面改版没,,感兴趣你可以试下
    yixiugegegege
        12
    yixiugegegege  
       2018-09-18 09:27:11 +08:00
    全局搜不到, 是不是采用什么编码方式加密了, 望指点, 试了 16 位编码 ,没找到
    yixiugegegege
        13
    yixiugegegege  
       2018-09-18 11:16:36 +08:00
    已经搞定
    smallQ
        14
    smallQ  
    OP
       2018-09-18 11:43:26 +08:00
    @yixiugegegege 好像页面改版了,应该是换关键字了,,,
    smallQ
        15
    smallQ  
    OP
       2018-09-18 11:43:56 +08:00
    @yixiugegegege 怎么弄的?
    wangjinhui
        16
    wangjinhui  
       2019-09-08 22:16:25 +08:00 via Android
    你好,请问解决了吗,能否指点一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5608 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 131ms · UTC 03:12 · PVG 11:12 · LAX 20:12 · JFK 23:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.