您的位置:首页 > 新闻资讯 >文章内容
爬虫怎么获取Ajax请求的信息
来源:互联网 作者:admin 时间:2019-02-13 10:09:00

    我们在搜索某一关键词的信息后,服务器只会向我们返回少量的数据,但当我们再次向下刷新的时候,会再次通过Ajax请求返回指定数目的数据。比如当浏览器的滚动条触底时,再次提取数据。这就产生了一个问题,爬虫怎么获取Ajax请求的信息?


    什么是Ajax


    Ajax,异步的JavaScript和XML。它不是一门编程语言,而是利用JavaScript在保证页面不刷新,页面链接不改变的情况下与服务器交换数据并更新部分网页的技术。


    比如百度搜索,在搜索框输入几个关键词,会发现下面会有一系列的文字;还有微博下拉会出现正在加载中,请稍后;这些都是Ajax加载的过程。


    爬虫怎么获取Ajax请求的信息


    我们就是利用Python来模拟这个过程,我们会使用requests库来发送请求,然后再将返回内容进行解析。


    1.分析请求


    打开Ajax的XHR过滤器,然后一直滑动页面以加载新的微博内容。可以看到,会不断有Ajax请求发出。


    选定其中一个请求,分析它的参数信息。点击该请求,进入详情页面,如下图所示。


爬虫怎么获取Ajax请求的信息


    可以发现,这是一个GET类型的请求,请求链接为[https://m.weibo.cn/api/container/getIndex?type=uid&value=2830678474&containerid=1076032830678474&page=2)。请求的参数有4个:type、value、containerid和page。


    随后再看看其他请求,可以发现,它们的type、value和containerid始终如一。type始终为uid,value的值就是页面链接中的数字,其实这就是用户的id。另外,还有containerid。可以发现,它就是107603加上用户id。改变的值就是page,很明显这个参数是用来控制分页的,page=1代表第一页,page=2代表第二页,以此类推。


    2.分析响应


    随后,观察这个请求的响应内容,如下图所示。


爬虫怎么获取Ajax请求的信息


    这个内容是JSON格式的,浏览器开发者工具自动做了解析以方便我们查看。可以看到,最关键的两部分信息就是cardlistInfo和cards:前者包含一个比较重要的信息total,观察后可以发现,它其实是微博的总数量,我们可以根据这个数字来估算分页数;后者则是一个列表,它包含10个元素,展开其中一个看一下,如下图所示。


爬虫怎么获取Ajax请求的信息


    可以发现,这个元素有一个比较重要的字段mblog。展开它,可以发现它包含的正是微博的一些信息,比如attitudes_count(赞数目)、comments_count(评论数目)、reposts_count(转发数目)、created_at(发布时间)、text(微博正文)等,而且它们都是一些格式化的内容。


    这样我们请求一个接口,就可以得到10条微博,而且请求时只需要改变page参数即可。


    这样的话,我们只需要简单做一个循环,就可以获取所有微博了。


    以上就是爬虫怎么获取Ajax请求的信息的介绍。爬虫在采集数据中,需要使用到代理来突破限制,可以选用代理精灵,数据采集服务服务提供商,我们拥有高品质爬虫代理,遍布全国200+城市服务器,从容应对海量IP需求,我们从不吝惜产品质量,为确保您获得最佳体验,我们选择与国内最值得信赖的运营服务商进行深度合作,提供更快,更可靠的服务。


相关文章内容简介
推荐阅读
  • 26 2019-03
    怎样才能从代理服务器IP中获得收益?

    现如今网络在不断的发展,而网站一夜之间也备受大家的瞩目,从之前的单人使用现在变成了共享网络,但是其资源的正确使用却给客户造成了不少的麻烦,而服务器却帮助他们很好的解决这一

  • 21 2019-05
    代理IP可以用于什么?

    代理IP可以用于什么?由于网络限制,一些用户使用代理IP来增加访问权限,隐藏其IP并使用动态IP地址访问网站。谁通常使用代理IP,代理IP可以用于什么?上面代理的IP品牌非常多,哪个代理IP

  • 10 2019-01
    Java爬虫怎么实现数据的爬取?几种常见的Java爬虫方式

    自从大数据出现后,越来越多的企业使用爬虫进行数据的爬取,爬取过来的数据进行分析之后,可以得到有价值的信息。Java语言也可以做爬虫,实现数据的爬取,那么这Java爬虫怎么实现数据的

  • 27 2019-06
    想刷阅读量用代理IP

    想刷阅读量用代理IP,这个刷量在目前来说是比较常见的,有些人是为了让数据好看些,免得被批评;有些人刷量是为了获取广告费等等,总之现今的刷量已经成为常态了。

  • 18 2019-12
    使用HTTP代理IP​的方法!

    使用HTTP代理IP​的方法!互联网虽然是互联,但是网站还是会有一定的限制的,比如网站就会对爬虫进行约束。因为如果大量的爬虫都聚集在一个网站,这对网站的服务器流量的损耗是非常大的

  • 03 2019-07
    代理IP更换IP安全并高匿名

    代理IP更换IP安全并高匿名,大家可以试试的。我们传统的方法是手动更换ip,不过近两年也有一些换ip软件的出现。相信使用过一些网络浏览器的用户都发现,很多网络浏览器在下载的过程中,

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部