广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python 爬取微博热搜页面
  • 781
分享到

Python 爬取微博热搜页面

2024-04-02 19:04:59 781人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

前期准备: fiddler 抓包工具python3.6谷歌浏览器 分析: 1.清理浏览器缓存cookie以至于看到整个请求过程,因为python代码开始请求的时候不带任何缓存。2.不

前期准备:

fiddler 抓包工具
python3.6
谷歌浏览器

分析:

1.清理浏览器缓存cookie以至于看到整个请求过程,因为python代码开始请求的时候不带任何缓存。
2.不考虑过多的header参数,先请求一次,看看返回结果

图中第一个链接是无缓存cookie直接访问的,状态码为302进行了重定向,用返回值.url会得到该url后面会用到(headers里的Referer参数值)
2 ,3 链接没有用太大用处为第 4 个链接做铺垫但是都可以用固定参数可以不用访问

访问https://passport.weibo.com/visitor/genvisitor ,cookie为tid=__095,注意tid需要去掉转义字符‘\’,get传的参数有用的只有t也就是tid 其他都是固定值 、_rand是浮点随机数没啥具体的意义可以用Python的random.random()函数,需要导入random库,get传参使用params=,post传参用data=,不是随便都能用的

得到返回值 含有SUB 和SUBP参数的值
正好是访问最后一个链接也就是热搜榜需要的cookie的值
到此分析结束

代码:

import requests
import random
import re
import urllib3
#警告忽略
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
class Wb():
    def __init__(self):
        #利用session保持回话
        self.session=requests.Session()
        #清理headers字典,不然update好像不会起作用
        self.session.headers.clear()

        self.header={
            "Host": "weibo.com",
            "Connection": "keep-alive",
            "Upgrade-Insecure-Requests": "1",
            "User-Agent": "Mozilla/5.0 (windows NT 10.0; WOW64) "
                          "AppleWEBKit/537.36 (Khtml, like Gecko) "
                          "Chrome/86.0.4240.198 Safari/537.36",
            "Accept": "text/html,application/xhtml+xml,application/xml;"
                      "q=0.9,image/avif,image/webp,image/apng,**",
            "Origin": "Https://passport.weibo.com",
            "Sec-Fetch-Site": "same-origin",
            "Sec-Fetch-Mode": "cors",
            "Sec-Fetch-Dest": "empty",
            "Referer": response.url,
        }
        self.session.headers.update(header1)
        response1=self.session.post(url="https://passport.weibo.com/visitor/genvisitor"
                                    ,data=data1,proxies=self.fiddler_proxies,verify=False)
        #利用正则表达式解析tid参数的值
        t=re.search('{"tid":"(.*)","new_tid"',response1.text).groups()[0]
        data2={
            "a":"incarnate",
            "t":t.replace("\\",""),
            "w": "2",
            "c": "095",
            "GC":"",
            "cb":"cross_domain",
            "from":"weibo",
            "_rand":random.random()
        }
        header2={
            "Sec-Fetch-Mode": "no-cors",
            "Sec-Fetch-Dest": "script",
            "Cookie":"tid="+t.replace("\\","")+"__095"
        }
        self.session.headers.update(header2)
        response2 = self.session.get(url="https://passport.weibo.com/visitor/visitor",
                                     params=data2,proxies=self.fiddler_proxies,verify=False)
        #从返回值中获取cookie字典
        cookie = requests.utils.dict_from_cookiejar(response2.cookies)


        header3={
            "Cookie":"SUB="+cookie["SUB"]+";"+"SUBP="+cookie["SUBP"],
            "Host": "s.weibo.com",
            "Upgrade-Insecure-Requests": "1"

        }
        self.session.headers.update(header3)
        response3=self.session.get(url="https://s.weibo.com/top/summary",
                                   proxies=self.fiddler_proxies,verify=False)
        # print(response3.text)


if __name__ == '__main__':
    wb=Wb()
    wb.get_top_summary()

至此只能得到原始的html页面,想要进一步操作需要在HTML里面提取有用的数据。。。。。。
爬虫初期需要更多的是耐心

到此这篇关于Python 爬取微博热搜页面的文章就介绍到这了,更多相关Python 爬取微博热搜页面内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python 爬取微博热搜页面

本文链接: https://www.lsjlt.com/news/162374.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 爬取微博热搜页面
    前期准备: fiddler 抓包工具Python3.6谷歌浏览器 分析: 1.清理浏览器缓存cookie以至于看到整个请求过程,因为Python代码开始请求的时候不带任何缓存。2.不...
    99+
    2022-11-12
  • python爬虫怎么爬取微博热搜
    这篇文章主要介绍python爬虫怎么爬取微博热搜,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.twiste...
    99+
    2023-06-14
  • python如何爬取微博热搜存入Mysql
    这篇文章主要介绍了python如何爬取微博热搜存入Mysql,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Python主要用来做什么Python主要应用于:1、Web开发;2...
    99+
    2023-06-14
  • python实战之Scrapy框架爬虫爬取微博热搜
    前言:大概一年前写的,前段时间跑了下,发现还能用,就分享出来了供大家学习,代码的很多细节不太记得了,也尽力做了优化。 因为毕竟是微博,反爬技术手段还是很周全的,怎么绕过反爬的话要在这...
    99+
    2022-11-12
  • Python定时爬取微博热搜示例介绍
    目录前言页面分析采集代码设置定时运行前言 相信大家在工作无聊时,总想掏出手机,看看微博热搜在讨论什么有趣的话题,但又不方便直接打开微博浏览,今天就和大家分享一个有趣的小爬虫,定时采集...
    99+
    2022-11-12
  • 使用python怎么爬取微博的热搜数据
    使用python怎么爬取微博的热搜数据?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。主要用到requests和bf4两个库将获得的信息保存在d://hotsea...
    99+
    2023-06-06
  • 使用Python怎么爬取微博热搜关键词
    今天就跟大家聊聊有关使用Python怎么爬取微博热搜关键词,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和...
    99+
    2023-06-14
  • python趣味挑战之爬取天气与微博热搜并自动发给微信好友
    目录一、系统环境二、爬取中国天气网三、爬取微博热搜四、微信自动发送消息五、源代码六、运行效果七、总结一、系统环境 1.python 3.8.2 2.webdriver(用于驱动edg...
    99+
    2022-11-12
  • python爬取热搜制作词云
    环境:win10,64位,mysql5.7数据库,python3.9.7,ancod 逻辑流程: 1、首先爬取百度热搜,至少间隔1小时2、存入文件,避免重复请求,如果本1小时有了不再...
    99+
    2022-11-12
  • python 爬取新浪微博信息
       新浪微博爬取的话需要设计到登录,这里我没有模拟登录,而是使用cookie进行爬取。获取cookie:代码:#-*-coding:utf8-*- from bs4 import BeautifulSoup import request...
    99+
    2023-01-31
    新浪 信息 python
  • python爬虫如何爬取微博粉丝数据
    这篇文章主要介绍了python爬虫如何爬取微博粉丝数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python可以做什么Python是一种编程语言,内置了许多有效的工具,P...
    99+
    2023-06-14
  • 使用python怎么爬取微博评论
    今天就跟大家聊聊有关使用python怎么爬取微博评论,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端...
    99+
    2023-06-14
  • 用Python实现爬取百度热搜信息
    目录前言库函数准备数据爬取网页爬取数据解析数据保存总结前言 何为爬虫,其实就是利用计算机模拟人对网页的操作 例如 模拟人类浏览购物网站 使用爬虫前一定要看目标网站可刑不可刑 :-) ...
    99+
    2022-11-12
  • python爬取微博图片数据存到Mysq
    本人长期出售超大量微博数据、旅游网站评论数据,并提供各种指定数据爬取服务,Message to YuboonaZhang@Yahoo.com。同时欢迎加入社交媒体数据交流群:99918768   由于硬件等各种原因需要把大概170多万2t...
    99+
    2023-01-31
    数据 图片 python
  • 用Python爬取指定关键词的微博
    目录一、分析页面二、数据采集1、发起请求2、提取数据三、小结前几天学校一个老师在做微博的舆情分析找我帮她搞一个用关键字爬取微博的爬虫,再加上最近很多读者问志斌微博爬虫的问题,今天志斌...
    99+
    2022-11-12
  • Python实现抖音热搜定时爬取功能
    目录抖音热搜榜requests爬取selenium爬取数据解析设置定时运行大家好,我是丁小杰。 上次和大家分享了Python定时爬取微博热搜示例介绍,堪称摸鱼神器,一个热榜不够看?今...
    99+
    2022-11-13
  • Python实现微博动态图片爬取详解
    由于微博的网页端有反爬虫,需要登录,所以我们换个思路,曲线救国。 我们找到微博在浏览器上面用于手机端的调试的APL,如何找到呢? 我这边直接附上微博的手机端的地址:https://...
    99+
    2022-11-13
  • Python模拟登录微博并爬取表情包
    一、开发工具 **Python****版本:**3.6.4 相关模块: DecryptLogin模块; argparse模块; requests模块; prettytable模块; ...
    99+
    2022-11-12
  • Python怎么实现微博动态图片爬取
    本篇内容主要讲解“Python怎么实现微博动态图片爬取”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么实现微博动态图片爬取”吧!我们找到微博在浏览器上面用于手机端的调试的APL,如...
    99+
    2023-06-29
  • 六个步骤学会使用Python爬虫爬取数据(爬虫爬取微博实战)
    用python的爬虫爬取数据真的很简单,只要掌握这六步就好,也不复杂。以前还以为爬虫很难,结果一上手,从初学到把东西爬下来,一个小时都不到就解决了。 Python爬虫六部曲 第一步:安装request...
    99+
    2023-09-10
    python 爬虫 python入门 python爬虫 python爬虫爬取网页数据
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作