• QQ空间Python爬虫(1)---网站分析


    闲来无事准备写一个爬虫来爬取自己QQ空间的所有说说和图片-。-

    首先准备工作,进入手机版QQ空间,分析页面:

    我们发现,手机版空间翻页模式是采用瀑布流翻页(查看更多),而非传统翻页模式,所以我们需要来分析一下点击“查看更多”时发送的请求:

    可以发现,上面红框中的xhr就是点击“查看更多”时发送的请求,我们再进一步分析:

    如图,红框中的request urlrequest headers是我们需要的信息,首先我们在代码中加入请求头headers:

    1 headers = {
    2     'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
    3     'accept-encoding': 'gzip, deflate, br',
    4     'accept-language': 'zh-CN,zh;q=0.8',
    5     'cache-control': 'max-age=0',
    6     'cookie': 'xxxxxx',
    7     'upgrade-insecure-requests': '1',
    8     'user-agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Mobile Safari/537.36'
    9 }

    cookie可以用来模拟登陆,但是注意此处的cookie会过期,需要每隔一段时间更新cookie内容,比较麻烦,需要找一个更好的解决方案-。-

    进一步分析Request URL:

    经分析得知,关键在于红线的两个地方,%3D后面的数字代表说说条数,范围0-1758(本人一共1758条说说-。-),count代表单次请求加载的说说数,试验得知最大为count=40。

    访问此url,我们发现返回了全为json数据的页面:

    由此,我们可以大概确定爬虫的编写思路,访问此Url,以最大加载量40为单位,循环到1758,解析每次访问所得的json数据即可爬取我们的空间说说和图片信息了。

     下一章:

    QQ空间Python爬虫(2)---分析json

  • 相关阅读:
    ASP.NET上传文件的三种基本方法
    实例分析 equals 和 ==
    如何保证Web Service的安全
    Winform动态显示图片,数据流方式
    C# 文件保存到数据库中或者从数据库中读取文件
    简说Session
    NotifyIcon的简单使用
    c# Invoke和BeginInvoke 区别
    DataGridView 的 CurrentCellDirtyStateChanged事件用法
    十种发送邮件的方式
  • 原文地址:https://www.cnblogs.com/neilshi/p/7879592.html
Copyright © 2020-2023  润新知