网页抓取qq(模拟登陆和异步爬一下QQ群成员的信息获取方法)

优采云 发布时间: 2021-11-12 16:12

  网页抓取qq(模拟登陆和异步爬一下QQ群成员的信息获取方法)

  自从开始学爬,就控制不住那颗躁动的心。我总是想每天爬一些东西。我爬过电影、影评、图片(美女)和视频链接。从最初对网页的简单分析到模拟登录再到异步加载,现在看到一个网页首先想到的就是要不要爬。话不多说,今天来到我们的项目,通过模拟登录和异步加载爬取QQ群成员信息。

  大概的概念

  我们通过网页版的QQ群管理获取相应的群信息,点击QQ群首页的“群管理”进入QQ群页面。分析链接后,我们发现每个QQ群的链接形式都是“#gid=”加上群号,这样就为我们的爬虫减少了一定的工作量。爬腾讯的网站最大的问题是登录,我们不能像刚开始的时候一样简单的发送一个登录请求包,然后在获取cookies后使用cookies访问。腾讯的网站是异步加载的。有的分析监控网络和js请求,找到想要的负载,很麻烦。所以我们使用selenuim,不需要查找请求,直接登录即可,登录后直接获取网页源码,

  一、模拟登录

  首先,通过 selenuim 定义一个驱动对象。这里我用的是火狐,可以通过下面的命令直接调用

  定义完成后,我们通过下面的功能浏览器打开我们要爬取QQ群的链接。QQ群链接形式为“#gid=”+群号

  二、 下拉加载页面

  登录QQ群成员界面后,网页上显示的只有20人左右。网页下拉时,每次更新都会加载20个会员的信息。我们需要模拟下拉界面来爬取大家需要的信息。当selenuim的另一个功能出现模拟下拉加载页面时

  三、保存网页源码

  通过selenuim中的driver.page_source获取网页的源代码,我们可以将源代码保存在本地的txt文件中,这样可以方便分析源代码,避免每次登录的麻烦。

  四、提取信息

  这一步相信很多朋友都非常熟悉。这一步和我们第一次接触爬虫时分析网页是一样的。这里我们使用 BeautifulSoup 来解析源码。依次获取群成员信息。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线