IP代理软件,http代理,API提取-黑洞HTTP

黑洞HTTP

您的位置: 首页 > 新闻资讯 > 高质量代理 > 正文

实战:模拟Ajax请求爬取微博数据

发布时间:2019年02月13日 来源:互联网

    虽说爬虫使用了代理IP可以突破限制,加快采集速度,但是这并不代表爬虫可以随意采集到数据的,也是需要针对网站的反爬虫机制进行研究,制定应对的方法,今天跟大家去了解下Ajax加载动态数据的问题,网络爬虫怎么获取到Ajax加载动态数据呢?


    什么是Ajax加载动态数据?我们平常搜索资料,通常都是先出现一部分的数据,若是没有找到满意的答案,可以再继续下滑即可获取到新的数据。下面跟小编去看看模拟Ajax请求爬取微博数据的案例。


    这里我们用程序模拟这些Ajax请求,将我的前10页微博全部爬取下来。


    定义一个方法来获取每次请求的结果,在请求时,page是一个可变参数,所以我们将它作为方法的参数传递进来,相关代码如下:


实战:模拟Ajax请求爬取微博数据


    首先,这里定义了base_url来表示请求的URL的前半部分。接下来,构造参数字典,其中type、value和containerid是固定参数,page是可变参数。调用urlencode()方法将参数转化为URL的GET请求参数,即类似于 type=uid&value=2830678474&containerid=1076032830678474&page=2 这样的形式。并将base_url与参数拼合形成一个新的URL。这样我们用requests请求这个链接,加入headers参数。然后判断响应的状态码,如果是200,则直接调用json()方法将内容解析为JSON返回,否则不返回任何信息。如果出现异常,则捕获并输出其异常信息。


    随后,我们需要定义一个解析方法,用来从结果中提取想要的信息,比如这次想保存微博的id、正文、赞数、评论数和转发数这几个内容,那么可以先遍历cards,然后获取mblog中的各个信息,赋值为一个新的字典返回即可:


实战:模拟Ajax请求爬取微博数据


    这里我们借助pyquery将正文中的HTML标签去掉。


    最后,遍历一下 page ,一共10页,将提取到的结果打印输出即可:


实战:模拟Ajax请求爬取微博数据


    另外,我们还可以加一个方法将结果保存到MongoDB数据库:


实战:模拟Ajax请求爬取微博数据


    这样所有功能就实现完成了。运行程序后,样例输出结果如下:


实战:模拟Ajax请求爬取微博数据


    查看一下MongoDB,相应的数据也被保存到MongoDB。


    这样,我们就顺利通过分析Ajax并编写爬虫爬取下来了微博列表。


    上文主要是介绍了模拟Ajax请求爬取微博数据的案例,目的是为了演示Ajax的模拟请求过程,爬取的结果不是重点。通过这个实例,我们主要学会了怎样去分析Ajax请求,怎样用程序来模拟抓取Ajax请求。


    当然这程序仍有很多可以完善的地方,如页码的动态计算、微博查看全文等,若感兴趣,可以尝试一下。


相关文章内容简介

1 实战:模拟Ajax请求爬取微博数据

    虽说爬虫使用了代理IP可以突破限制,加快采集速度,但是这并不代表爬虫可以随意采集到数据的,也是需要针对网站的反爬虫机制进行研究,制定应对的方法,今天跟大家去了解下Ajax加载动态数据的问题,网络爬虫怎么获取到Ajax加载动态数据呢?    什么是Ajax加载动态数据?我们平常搜索资料,通常都是先出现一部分的数据,若是没有找到满意的答案,可以再继续下滑即可获取到新的数据。下面跟小编去看看模拟Ajax请求爬取微博数据的案例。    这里我们用程序模拟这些Ajax请求,将我的前10页微博全部爬取下来。    定义一个方法来获取每次请求的结果,在请求时,page是一个可变参数,所以我们将它作为方法的参数传递进来,相关代码如下:    首先,这里定义了base_url来表示请求的URL的前半部 [阅读全文]

热门标签

最新标签

推荐阅读

  1. 24

    2018-12

    如何换电脑ip地址?换ip地址软件推荐

    每台电脑或手机,在拨号上网连通网络的一瞬间,会分配得到一个ip地址,这个ip地址就相当于是我们的身份证。很多时候我们做推广,需要切换不同的账号去发送广告,这个时候如果你没换ip地

  2. 12

    2019-04

    代理IP如何保护你的iP安全?

    代理IP提供商将了解你是谁你何时获得一个IP.这是另一次的对话 - 虽然有付款程序,例如加密货币比特币不是像你可能想的那样匿名。但实际上,虽然他们可以理解你可能是谁,但IP代理公司在

  3. 10

    2019-05

    Ip代理工具排行榜分析

    但凡使用过或者正在使用ip代理工具的用户,对ip代理工具排行榜都是不陌生的,很多用户对代理工具的了解和选择很多时候都是靠着这个排行榜来实现的。

  4. 13

    2018-09

    更改ip六部曲:怎么更改电脑ip地址?

    相信现在基本家家户户都有一台电脑了,电脑想上网就需要一个ip地址,可是很多朋友都不会修改IP地址。下面就由小编来为大家介绍怎么修改自己电脑的ip地址。欢迎阅读。

  5. 10

    2019-05

    ip代理工具的简要介绍

    现在从事互联网方面工作的人员非常多,他们一般从事淘宝上的刷单,以及平时的网赚项目方面的工作的时候都需要获取大量的ip,在这个时候ip代理工具就派上用场了。

  6. 13

    2018-09

    代理服务器是什么意思?怎么设置?

    代理有很多种解释,而我们常常提到的代理,从计算机专业角度来说就是指代理服务器相关,针对这些问题,下面就让黑洞代理小编来告诉你,代理服务器是什么意思?怎么 设置?