以下将从处理cookie的两种方式来分析爬取雪球网的新闻数据,

一个是手动处理cookie,到源码去抓包,找到他的request header里面的cookie,复制出来封装到headers内;

另一个是自动处理cookie,引入模块requests的session,这个方法和requests一样可以发送get和post请求,但是他在发送请求的时候自动携带cookie

那么什么情况下我们爬取数据需要用到cookie呢?

首先我们要知道cookie他是服务器记录客户端的一种状态,有一些网站的爬取,需要先通过验证信息才可以进去主页面,如果我们在爬取大量数据的情况下,可能需要反复登录才可以爬取,这样效率不高,下面通过简单分析爬取雪球网的新闻标题来区分两种爬取的异同

我们先分析网站是不是ajax动态获取数据,通过xhr我们看到每次向下拉,xhr总是有新的数据显示,说明该网站是ajax动态获取数据的

分析完网站的基本情况之后,我们先按照之前的通用爬虫去爬取数据

import requestsurl="https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=20369998&count=15&category=-1"
headers ={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"}
page_json  = requests.get(url=url,headers=headers).json()
print(page_json)

输出结果为:

{'error_description': '遇到错误,请刷新页面或者重新登录帐号后再试', 'error_uri': '/v4/statuses/public_timeline_by_category.json', 'error_data': None, 'error_code': '400016'}

出现上面的这种原因是因为cookie的反爬机制

手动处理cookie

import requestsurl="https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=20369998&count=15&category=-1"
headers ={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36","Cookie": "aliyungf_tc=AQAAADriOUCilQoAxZ5btPQfYv7152ox; acw_tc=2760824915856669537353368e2ea5d4c1b87e45dadece330ae07e755b96f1; xq_a_token=2ee68b782d6ac072e2a24d81406dd950aacaebe3; xqat=2ee68b782d6ac072e2a24d81406dd950aacaebe3; xq_r_token=f9a2c4e43ce1340d624c8b28e3634941c48f1052; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTU4NzUyMjY2MSwiY3RtIjoxNTg1NjY2OTA4NDgwLCJjaWQiOiJkOWQwbjRBWnVwIn0.YCQ_yUlzhRvTiUgz1BWWDFrsmlxSgsbaaKs0cxsdxnOaMhIjF0qUX-5WNeqfRXe15I5cPHiFf-5AzeRZgjy0_bSId2-jycpDWuSIseOY07nHM306A8Y1vSJJx4Q9gFnWx4ETpbdu1VXyMYKpwVIKfmSb5sbGZYyHDJPQQuNTfIAtPBiIeHWPDRB-wtf0qa5FNSMK3LKHRZooXjUgh-IAFtQihUIr9D81tligmjNYREntMY1gLg5Kq6GjgivfF9CFc11sJ11fZxnSw9e8J_Lmx8XXxhwHv-j4-ANUSIuglM4cT6yCsWa3pGAVMN18r2cV72JNkk343I05DevQkbX8_A; u=481585666954081; Hm_lvt_1db88642e346389874251b5a1eded6e3=1585666971; device_id=24700f9f1986800ab4fcc880530dd0ed; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1585667033"}
page_json  = requests.get(url=url,headers=headers).json()
print(page_json)手动处理cookies爬取雪球网

自动处理cookie

import requests
from lxml import etree
session = requests.Session()url="https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=20369998&count=15&category=-1"
headers ={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"}# 第一步,向雪球网首页发送一条请求,获取cookie
session.get(url="https://xueqiu.com",headers=headers)
# 第二步,获取动态加载的新闻数据
page_json = session.get(url=url,headers=headers).json()
print(page_json)自动处理cookie爬取雪球网

爬取雪球网的新闻数据相关推荐

  1. 简单使用resquests爬取雪球网数据,分析股票走势

    简单使用resquests爬取雪球网数据,分析股票走势 import requests import pymongo import json # 数据库初始化 client = pymongo.Mon ...

  2. PyQt5制作一个爬虫小工具,爬取雪球网上市公司的财务数据

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于可以叫我才哥 ,作者:可以叫我才哥 最近有朋友需要帮忙写个爬虫脚本,爬取雪球网一些上 ...

  3. Python爬虫系列之爬取微信公众号新闻数据

    Python爬虫系列之爬取微信公众号新闻数据 小程序爬虫接单.app爬虫接单.网页爬虫接单.接口定制.网站开发.小程序开发 > 点击这里联系我们 < 微信请扫描下方二维码 代码仅供学习交流 ...

  4. python爬虫金融数据_python爬虫项目-爬取雪球网金融数据(关注、持续更新)

    (一)python金融数据爬虫项目 爬取目标:雪球网(起始url:https://xueqiu.com/hq#exchange=cn&firstname=1&secondname=1_ ...

  5. python爬虫爬取雪球网_Python爬虫爬取天天基金网基金排行

    本文以天天基金网为例,爬取网站上的基金排行并存储在本地记事本中和MongoDB数据库中. 打开网页我们看到每页最多显示50个基金信息,在源代码中,我们发现其他页码没有跳转链接.但是我们选择右下角不分页 ...

  6. 爬取雪球网股票信息(一)

    这篇是爬取股票名称,我用了三个模块来实现.Crwal_Share_Names.Saved_MongDB.DEFINITION. 首先是最简单的一个模块:DEFINITION,定义,这个模块里面定义了要 ...

  7. python爬虫——如何爬取ajax网页之爬取雪球网文章

    效果图 传送门点击传送门 进入网站之后我们打开开发工具之后,往下滑时会出现一个接口(当然滑的越多接口越多) 我们通过对比两个及以上的接口进行分析它们的不同之处(这叫找规律) 可以发现max_id是在变 ...

  8. Python爬虫 爬取雪球网部分数据

    import requests import jsonurl = {'https://xueqiu.com/v4/statuses/public_timeline_by_category.json?s ...

  9. 6.9 用Python操控数据库(批量删除,百度新闻数据爬取与存储,写入数据时进行去重处理,pandas读取sql数据)

    学习完MySQL数据库的基本操作后,下面来学习如何用Python连接数据库,并进行数据的插入.查找.删除等操作. 6.9.1 用PyMySQL库操控数据库 上一节在phpMyAdmin 中创建了数据库 ...

  10. 如何使用python编程抢京东优惠券 知乎_学好Python爬取京东知乎价值数据

    原标题:学好Python爬取京东知乎价值数据 Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这 ...

最新文章

  1. JIT Code Generation代码生成
  2. PDF审计工具peepdf
  3. caffeImagenet相关
  4. win10+计算机安全配置,做好个人电脑安全隐私设置Windows10系统磁盘数据加密操作...
  5. 注释标记的原则_它关系到平台如何标记操纵的媒体。 这是设计师应遵循的12条原则。
  6. 热榜!!!数据结构与算法:C语言版---数组与稀疏矩阵---强势来袭!
  7. java上传csv文件上传_java处理csv文件上传示例详解
  8. python爬去百度百科词条_Python爬虫入门学习实践——爬取小说
  9. TinyWeb:C#中的简单Web服务器
  10. Linux 命名空间
  11. Python对我下手了!学会这几个知识点可以救命!
  12. 实现nav_微信小程序——沉浸式导航栏实现(含iphoneX适配和组件封装)
  13. .bin文件如何打开并使用
  14. 如何搭建自己的云盘然后进行资源共享?——可道云版
  15. 华为二层网络隔离与互通(vlan隔离与端口隔离)
  16. 胡闹厨房2 for Mac厨房模拟游戏又名煮糊了2
  17. 二、入门Python第二课
  18. 今年,我只赚了一点点
  19. ORB-SLAM3 IMU(李群)+Frame+KeyFrame+MapPoint
  20. 上传大文件解决方案方法

热门文章

  1. 秀米编辑器内容复制到wangEditor中图片的处理
  2. 天地图和谷歌地图静态图像素坐标和经纬度坐标互转
  3. apktool.bat 无法下载的解决方案
  4. python 使用PIL库批量修改图片大小
  5. Go语言实用用法大全
  6. 【2018亚太数据中心峰会】黄超:从供到需-中国IDC产业发展的环境分析
  7. python爬百度贴吧_python爬虫-爬取百度贴吧帖子加图片
  8. 第1天学习打卡(Javaweb 邮件发送:原理、发送简单文本邮件、发送带图片和附件邮件、网站注册发送邮件Servlet实现)
  9. 使用gsds绘制基因结构图_原来可以用R这么画基因结构图
  10. leetcode刷题笔记(1-10)持续更新中