python爬取微博评论(无重复数据)

手把手教你用Python处理Weibo_datasets虚假新闻检测数据集(含图片爬虫与数据清洗) 本文详细介绍了使用Python处理Weibo_datasets虚假新闻检测数据集的完整流程,包括图片爬取、数据清洗和结构化转换。通过实战案例和代码示例,帮助研究者高效处理数据中的常见问题,如404错误、图片去重和格式验证,最终生成模型就绪格式的数据集。 阅读详情
AI摘要

本文介绍了一个使用python爬取微博评论并去除重复数据的方法,详细讲解了获取微博地址、主评论和子评论的步骤,以及如何通过解析接口和循环请求避免重复数据。

python爬取微博评论(无重复数据)

  • 前言
  • 一、整体思路
  • 二、获取微博地址
  • 1、获取ajax地址2、解析页面中的微博地址3、获取指定用户微博地址
  • 三、获取主评论
  • 四、获取子评论
  • 1、解析子评论2、获取子评论
  • 五、主函数调用
  • 1、导入相关库2、主函数执行3、结果
  • 写在最后

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:961562169

Tip:本文仅供学习与交流,切勿用于非法用途!!!

前言

前段时间微博上关于某日记的评论出现了严重的两极分化,出于好奇的我想对其中的评论以及相关用户做一个简单的分析,于是我在网上找了相关的代码,简单的修改了cookies等参数就Run起来了。
既然没报错!! 我很震惊,从未若此畅快过~

随后便分析起来,过了一会就发现:事情并不简单,数据是重复的!!

没错,重复率如此之高,令人发指。于是,我开始了我的探索之路~
说明:整体代码还是借鉴了之前大佬的,主要是解决了数据重复的问题,如有侵权还请联系!

一、整体思路

思路也比较清楚,我画了一个极其简单的流程图:


至于这里为什么主评论和子评论要分开获取,这也是解决重复问题的关键,通过测试可以知道直接按照规律修改页面参数或者通过.cn的页面爬取,在到达一定的数量后(大概是几百)就无法得到数据或是出现数据重复。

二、获取微博地址

访问微博用户页面时的请求URL为:

https://weibo.com/xxxxxxxxx?is_search=0&visible=0&is_all=1&is_tag=0&profile_ftype=1&page=1

其中通过修改page参数,即可控制页码,但是细心的小伙伴应该发现了,一页的数据除了直接加载的HTML之外,还有两次是通过ajax动态获取的:

start_ajax_url1 = 'https://weibo.com/p/aj/v6/mblog/mbloglist?ajwvr=6&domain=%s&is_all=1&page={0}&pagebar=0&pl_name=Pl_Official_MyProfileFeed__20&id=%s&script_uri=/%s&pre_page={0}'%(domain,page_id,user)
start_ajax_url2 = 'https://weibo.com/p/aj/v6/mblog/mbloglist?ajwvr=6&domain=%s&is_all=1&page={0}&pagebar=1&pl_name=Pl_Official_MyProfileFeed__20&id=%s&script_uri=/%s&pre_page={0}'%(domain,page_id,user)

也就是说,每页数据有三部分组成:

1、获取ajax地址

通过主界面,获取相应的ajax请求地址:

def get_ajax_url(user):
    url = 'https://weibo.com/%s?page=1&is_all=1'%user
    res = requests.get(url, headers=headers,cookies=cookies)
    html  = res.text
    page_id = re.findall("CONFIG\['page_id'\]='(.*?)'",html)[0]
    domain = re.findall("CONFIG\['domain'\]='(.*?)'",html)[0]
    start_ajax_url1 = 'https://weibo.com/p/aj/v6/mblog/mbloglist?ajwvr=6&domain=%s&is_all=1&page={0}&pagebar=0&pl_name=Pl_Official_MyProfileFeed__20&id=%s&script_uri=/%s&pre_page={0}'%(domain,page_id,user)
    start_ajax_url2 = 'https://weibo.com/p/aj/v6/mblog/mbloglist?ajwvr=6&domain=%s&is_all=1&page={0}&pagebar=1&pl_name=Pl_Official_MyProfileFeed__20&id=%s&script_uri=/%s&pre_page={0}'%(domain,page_id,user)
    return start_ajax_url1,start_ajax_url2
123456789

2、解析页面中的微博地址

发送请求后,解析页面中的微博地址(主页面请求或AJAX请求相同):

def parse_home_url(url): 
    res = requests.get(url, headers=headers,cookies=cookies)
    response = res.content.decode().replace("\\", "")
    every_id = re.compile('name=(\d+)', re.S).findall(response) # 获取次级页面需要的id
    home_url = []
    for id in every_id:
        base_url = 'https://weibo.com/aj/v6/comment/big?ajwvr=6&id={}&from=singleWeiBo'
        url = base_url.format(id)
        home_url.append(url)
    return home_url

3、获取指定用户微博地址

将上面两个函数整合,得到:

def get_home_url(user,page): 
    start_url = 'https://weibo.com/%s?page={}&is_all=1'%user
    start_ajax_url1,start_ajax_url2 = get_ajax_url(user)
    for i in range(page): 
        home_url = parse_home_url(start_url.format(i + 1)) # 获取每一页的微博
        ajax_url1 = parse_home_url(start_ajax_url1.format(i + 1)) # ajax加载页面的微博
        ajax_url2 = parse_home_url(start_ajax_url2.format(i + 1)) # ajax第二页加载页面的微博
        all_url = home_url + ajax_url1 + ajax_url2
        print('第%d页解析完成'%(i+1))
    return all_url

参数为用户的ID,以及爬取的页数,返回结果则为每条微博的地址。

三、获取主评论

简单分析请求数据可以知道,获取微博评论的接口为:

https://weibo.com/aj/v6/comment/big?ajwvr=6&id=4498052401861557&root_comment_max_id=185022621492535&root_comment_max_id_type=0&root_comment_ext_param=&page=1&from=singleWeiBo

一个很耀眼的page参数映入眼帘,而且似乎其他参数去掉之后请求也正常,也许你第一反应是写个循环直接获取不就OK了,emmmm,然后你就将陷入数据重复的恐怖原点。似乎root_comment_max_id这个参数也很重要,得想法获得。通过进一步分析可以发现,其实在请求返回的数据中,已经包含了下一步请求的地址,只需要提取出来再继续往下即可:


代码如下:

def parse_comment_info(data_json): 
    html = etree.HTML(data_json['data']['html'])
    name = html.xpath("//div[@class='list_li S_line1 clearfix']/div[@class='WB_face W_fl']/a/img/@alt")
    info = html.xpath("//div[@node-type='replywrap']/div[@class='WB_text']/text()")
    info = "".join(info).replace(" ", "").split("\n")
    info.pop(0)
    comment_time = html.xpath("//div[@class='WB_from S_txt2']/text()") # 评论时间
    name_url = html.xpath("//div[@class='WB_face W_fl']/a/@href")
    name_url = ["https:" + i for i in name_url]
    ids = html.xpath("//div[@node-type='root_comment']/@comment_id")    
    try:
        next_url = 'https://weibo.com/aj/v6/comment/big?ajwvr=6&from=singleWeiBo&'+html.xpath('/html/body/div/div/div[%d]/@action-data'%(len(name)+1))[0]+'&__rnd='+str(int(time.time()*1000))
    except:
        try:
            next_url = 'https://weibo.com/aj/v6/comment/big?ajwvr=6&from=singleWeiBo&'+html.xpath('/html/body/div/div/a/@action-data')[0]+'&__rnd='+str(int(time.time()*1000))
        except:
            next_url = ''
    comment_info_list = []
    for i in range(len(name)): 
        item = {}
        item["id"] = ids[i]
        item["name"] = name[i] # 存储评论人的网名
        item["comment_info"] = info[i][1:] # 存储评论的信息
        item["comment_time"] = comment_time[i] # 存储评论时间
        item["comment_url"] = name_url[i] # 存储评论人的相关主页
        try:
            action_data = html.xpath("/html/body/div/div/div[%d]//a[@action-type='click_more_child_comment_big']/@action-data"%(i+1))[0]
            child_url = 'https://weibo.com/aj/v6/comment/big?ajwvr=6&from=singleWeiBo&' + action_data
            item["child_url"] = child_url
        except:
            item["child_url"] = ''    
        comment_info_list.append(item)
    return comment_info_list,next_url

参数为请求的json数据,返回解析后的数据,以及下一个地址,数据格式如下:


其中child_url即为相对应子评论地址,进一步获取子评论。

四、获取子评论

获取子评论的思路和获取主评论的思路是一致的,当我们获取完所有主评论之后,便遍历结果,当child_url不为空时(即有子评论),则进行请求获取子评论。

1、解析子评论

def parse_comment_info_child(data_json): 
    html = etree.HTML(data_json['data']['html'])
    name = html.xpath("//div[@class='list_li S_line1 clearfix']/div/div[1]/a[1]/text()")
    info=html.xpath("//div[@class='list_li S_line1 clearfix']/div/div[1]/text()")
    info = "".join(info).replace(" ", "").split("\n")
    info.pop(0)
    comment_time = html.xpath("//div[@class='WB_from S_txt2']/text()") # 评论时间
    name_url = html.xpath("//div[@class='list_li S_line1 clearfix']/div/div[1]/a[1]/@href")
    name_url = ["https:" + i for i in name_url]
    ids = html.xpath("//div[@class='list_li S_line1 clearfix']/@comment_id")
    try:
        next_url = 'https://weibo.com/aj/v6/comment/big?ajwvr=6&from=singleWeiBo&'+html.xpath('/html/body/div[%d]/div/a/@action-data'%(len(name)+1))[0]+'&__rnd='+str(int(time.time()*1000))
    except:
        next_url = ''
    comment_info_list = []
    for i in range(len(name)): 
        item = {}
        item["id"] = ids[i]
        item["name"] = name[i] # 存储评论人的网名
        item["comment_info"] = info[i][1:] # 存储评论的信息
        item["comment_time"] = comment_time[i] # 存储评论时间
        item["comment_url"] = name_url[i] # 存储评论人的相关主页
        comment_info_list.append(item)
    return comment_info_list,next_url

2、获取子评论

整合调用上一个函数,获得相应的子评论:

def get_childcomment(url_child):
    print('开始获取子评论...')
    comment_info_list = []
    res = requests.get(url_child, headers=headers, cookies=cookies)
    data_json = res.json()
    count = data_json['data']['count']
    comment_info,next_url = parse_comment_info_child(data_json)
    comment_info_list.extend(comment_info)
    print('已经获取%d条'%len(comment_info_list))
    while len(comment_info_list) < count:
        if next_url == '':
            break
        res = requests.get(next_url,headers=headers,cookies=cookies)
        data_json = res.json()
        comment_info,next_url = parse_comment_info_child(data_json)
        comment_info_list.extend(comment_info)
        print('已经获取%d条'%len(comment_info_list))
    return comment_info_list

参数为child_url,返回为对应的子评论。

五、主函数调用

1、导入相关库

import re
import time
import json
import urllib
import requests
from lxml import etree
123456

2、主函数执行

if "__main__" == __name__: 
    # 设置相应参数
    headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:75.0) Gecko/20100101 Firefox/75.0',
            'Accept': '*/*',
            'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2',
            'Content-Type': 'application/x-www-form-urlencoded',
            'X-Requested-With': 'XMLHttpRequest',
            'Connection': 'keep-alive',
    }
    cookies = {} # 微博cookies(需要自己获取请求得到)
    userid = ''  # 需要爬取的微博用户ID
    page = 1     # 爬取的页数
    # 开始爬取
    all_urls = get_home_url(userid,page)
    for index in range(len(all_urls)):
        url = all_urls[index] 
        print('开始获取第%d个微博主评论...'%(index+1))
        comment_info_list = []
        res = requests.get(url, headers=headers, cookies=cookies)
        data_json = res.json()
        count = data_json['data']['count']
        comment_info,next_url = parse_comment_info(data_json)
        comment_info_list.extend(comment_info)
        print('已经获取%d条'%len(comment_info_list))
        while True:
            if next_url == '':
                break
            res = requests.get(next_url,headers=headers,cookies=cookies)
            data_json = res.json()
            comment_info,next_url = parse_comment_info(data_json)
            comment_info_list.extend(comment_info)
            print('已经获取%d条'%len(comment_info_list))
        for i in range(len(comment_info_list)):
            child_url = comment_info_list[i]['child_url']
            if child_url != '':
                comment_info_list[i]['child'] = get_childcomment(child_url)
            else:
                comment_info_list[i]['child'] = []
        with open('第%d条微博评论.txt'%(index+1),'w') as f:
            f.write(json.dumps(comment_info_list))

3、结果

获取了10条微博数据,如下:

写在最后

当然,还有很多不足之处,比如速度不太理想,结构比较混乱。考虑过加入多线程等办法加快速度,不过由于需要登陆,所以有封号风险哦,大家慎重~

最后,感谢各位大大的耐心阅读~

 

python爬虫爬取微博评论案例详解 这篇文章主要介绍了python爬虫爬取微博评论,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 前几天,杨超越编程大赛火了,大家都在报名参加,而我也是其中的一员。 在我们的项目中,我负责的是数据爬取这块,我主要是把对于杨超越 的每一条评论的相关信息。 数据格式:{“name”:评论人姓名,“comment_time”:评论时间,... 阅读详情

相关推荐

一篇文章教会你使用Python定时抓取微博评论

【Part1——理论篇】 试想一个问题,如果我们要抓取某个微博大V微博的评论数据,应该怎么实现呢?最简单的做法就是找到微博评论数据接口,然后通过改变参数来获取最新数据并保存。首先从微博api寻找抓取评论的接口,如下图所示。 ​ 但是很不幸,该接口频率受限,抓不了几次就被禁了,还没有开始起飞,就凉凉了。 接下来小编又选择微博的移动端网站,先登录,然后找到我们想要抓取评论的微博,...

Python学习Q群696455390 956

【Python爬虫】一键获取微博评论,轻松实现舆情分析!

无需修改,上手即用!大幅度降低微博评论的爬取限制!基于微博API调用爬取!克服了在网页端爬取时,对于每条微博限制爬取200条左右的评论,并且在数据预处理方面,通过API调用也更简洁,对新手十分有利。

weixin_51167671的博客 2万+

Python库 | pytest-jira-0.3.8.zip

资源分类:Python库 所属语言:Python 资源全名:pytest-jira-0.3.8.zip 资源来源:官方 安装方法:https://lanzao.blog.youkuaiyun.com/article/details/101784059

Python爬虫实战(二):某博评论文本爬取

追风赶月莫停留,平芜尽处是春山。 文章目录追风赶月莫停留,平芜尽处是春山。一、网页分析二、接口分析url分析 一、网页分析 微博共有三种浏览方式,便于评论的抓取我们这次选择的是类似手机网页版的微博 打开某一篇博文的评论,进入开发者模式,刷新网页,就能发现这个东西。 里面包含评论内容、评论时间、评论者昵称、id等信息。 二、接口分析 url分析 第一页: https://m.weibo.cn/comments/hotflow?id=4635408392523906&mid=4635408392

韩国麦当劳的博客 8708

[零基础]用docker搭建Hadoop集群

[零基础]用docker搭建Hadoop集群,每一步都有详细的解释!

weixin_56114243的博客 2万+

FPGA DMA IP核使用指南

数据传输:支持从源地址到目标地址的数据传输。中断管理:提供中断信号,便于CPU处理传输完成事件。传输控制:支持传输大小、方向和暂停/恢复控制。

weixin_66634995的博客 2428

id 怎么获取jira 评论_学会这招!用python爬取微博评论(无重复数据)

Tip:本文仅供学习与交流,切勿用于非法用途!!!前言前段时间微博上关于某日记的评论出现了严重的两极分化,出于好奇的我想对其中的评论以及相关用户做一个简单的分析,于是我在网上找了相关的代码,简单的修改了cookies等参数就Run起来了。既然没报错!! 我很震惊,从未若此畅快过~随后便分析起来,过了一会就发现:事情并不简单,数据是重复的!!没错,重复率如此之高,令人发指。于是,我开始了我的探索之路...

weixin_30604459的博客 607

11 CO配置-控制-成本中心会计-定义分割结构(OKES-Define Splitting Structure)

业务背景:定义分割结构 事务码: OKES SPRO路径:SPRO->控制->成本中心会计->实际过账->期末结算->作业分配->划分->定义分割结构 第1步,SPRO路径进入 第2步,选择“新的条目”创建 分割结构 第3步,选择分割结构代码 点击“分割规则”进行下一个界面,点击“新条目”创建 分割结构规则 第4步,点击“为规则选择” 为分割结构规则创建版本并保存 第5步,选择“分配”,点击“新的条目” 输入分割结构分配

4371

list获取重复数据_Python爬取微博评论(无重复数据)

“微信公众号:Python干货铺子关注即可开启快乐学习Python和Matlab的大门,您还在犹豫什么~”前言大约是今年年后那段时间微博上关于某日记的评论出现了严重的两极分化,出于好奇的我想对其中的评论以及相关用户做一个简单的分析,于是我在网上找了相关的代码,简单的修改了cookies等参数就Run起来了。既然没报错!!我很震惊,从未若此畅快过~随后便分析起来,过了一会就发现:事情并不简...

weixin_39927059的博客 436

AVL(Athena Vortex Lattice)如何编写与应用(一)

前两个是弦向的涡个数和以cos函数分布的间距参数(设为1即可)后两个可以在这里声明也可以写到后面的每一个section中,是展向的涡个数和以sin函数分布的间距参数。这个文件是用来建立飞机模型的文件,是一定要有的文件,其他的.run和.mass并不是必须要有的,甚至mass文件并没有看到有人在使用。Sref、Cref、Bref是飞机的参考面积参考弦长和参考的展长,我的理解就是所设计飞机的S,c,b这三个参数。———————————————以上是飞机的基本信息———————————————

dawangaa的博客 1510

PVT(Process Voltage Temperature)

芯片PVT

网始如芯个人博客 3万+

ajax将数据显示在class为content的标签中_python爬取微博评论(无重复数据)

python爬取微博评论(无重复数据)前言一、整体思路二、获取微博地址1、获取ajax地址2、解析页面中的微博地址3、获取指定用户微博地址三、获取主评论四、获取子评论1、解析子评论2、获取子评论五、主函数调用1、导入相关库2、主函数执行3、结果写在最后点击此处,获取海量Python学习资料!Tip:本文仅供学习与交流,切勿用于非法用途!!!前言前段时间微博上关于某日记的评论出现了严重的两极分化,出...

weixin_42465158的博客 138

别再折腾虚拟机了!手把手教你用WSL2在Windows 11上安装Kali Linux(含汉化与图形界面)

本文详细介绍了如何在Windows 11上通过WSL2安装和配置Kali Linux,包括汉化与图形界面设置。通过WSL2,用户可以享受接近原生性能的Linux体验,同时保持与Windows系统的无缝集成,特别适合网络安全爱好者和开发者。文章还提供了常见问题解决和性能优化建议,帮助用户高效使用Kali工具集。

weixin_42525369的博客 322

ajax headers 参数有什么用_学会这招!用python爬取某博评论(无重复数据)

python爬取评论前言前段时间某博上关于某日记的评论出现了严重的两极分化,出于好奇的我想对其中的评论以及相关用户做一个简单的分析,于是我在网上找了相关的代码,简单的修改了cookies等参数就Run起来了。既然没报错!! 我很震惊,从未若此畅快过~随后便分析起来,过了一会就发现:事情并不简单,数据是重复的!!**没错,重复率如此之高,令人发指。于是,我开始了我的探索之路~说明:整体代码还是借鉴了...

weixin_39892615的博客 125

RK3588开发笔记-Buildroot编译host-nodejs报错解决ModuleNotFoundError: No module named ‘_bz2‘

在RK3588的开发过程中,使用Buildroot进行系统的构建和编译是一个常见的选择。然而,在编译host-nodejs的过程中,有时会遇到报错信息提示。这个错误通常是由于Python环境中缺少相应的模块导致的。以下将记录我解决这个问题的过程。。在RK3588的开发过程中,使用Buildroot编译host-nodejs时遇到的错误,通常是由于缺少相应的Python模块导致的。通过配置buildroot pythong bzip2开发库并重新编译,可以解决这个问题。

flypig has a dream! 898

华为OD机试 - 开源项目热度榜单(Java 2025 C卷 100分)

H = Wwatch X#watch + Wstar X#star +Wfork X#fork +Wissue X#issue +Wmr X#mr H表示热度值,Wwatch、Wstar、Wfork、Wissue、Wmr分别表示5个统计维度的权重,#watch、#star、#fork、#issue、#mr分别表示5个统计维度的统计值。

学Java,找哪吒 1756

python代码合集-python初学者代码合集

【写在前边的话】从零开始自学python有几个月了,一直坚持在github上上传一些代码片段。贴一下github地址:Teingi/test 供初学者借鉴。在刷题的过程中总结了思路和方法,放在了我的博客里边,有兴趣的可以看看。python学习记录1、array.py—————用python实现了7种排序算法(冒泡排序、插入排序、希尔排序、选择排序、归并排序、快速排序、堆排序、计数排序)2、neic...

weixin_39826984的博客 2007

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

MediaCrawler:Python开源爬虫框架入门与合规实践指南

网络爬虫是一种自动化获取网页数据的程序,其核心原理是通过模拟浏览器发送HTTP请求,解析返回的HTML或JSON数据,并提取所需信息。这项技术对于数据采集、市场分析和学术研究具有重要价值,广泛应用于公开信息抓取、内容聚合和自动化监控等场景。在实际工程中,爬虫框架通过模块化设计将请求、解析、调度和存储等环节解耦,显著提升了开发效率和代码可维护性。本文以MediaCrawler这一Python开源项目为例,探讨如何构建一个结构清晰、易于扩展的爬虫框架,并重点介绍在实施过程中如何遵守robots.txt协议、控制

weixin_30607029的博客 426

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Python爬虫—爬取微博评论数据

电脑访问手机端微博_https://m.weibo.cn/_:打开一条微博_https://m.weibo.cn/detail/4907031376694279_:URL地址中的_49070__31376694279_就是需要爬取的微博ID:将ID填写到_main_下即可,也支持同时填写多个。

z099164的博客 5088

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python爬各平台评论并数据分析——数据采集、评论情绪分析、新闻热度

新闻热点、各平台评论、点赞等等、情绪分析

Strive_LiJiaLe的博客 2万+

Python微博动态爬虫

本文是刘金路的《语言数据获取与分析基础》第十一章的扩展,详细解释了如何利用Python进行微博爬虫,爬虫内容包括微博指定帖子的一级评论、评论时间、用户名、id、地区、点赞数。

m0_73693562的博客 6329

吃瓜群众:Python爬取微博评论区

网页地址:https://weibo.com/2871868031/MEhZwrDay步骤:1.进入微博首页,搜索相关内容,进入评论区,在此页面右键,点击“检查”2.点击“网络”,然后刷新页面,搜索评论”如小斯赛前说的“,找到评论所在的真实网址。

Trb701012的博客 1303

Python的requests库实现微博评论爬取(保姆版+翻页爬取)

本文介绍了如何使用 Python 的 requests 库实现微博评论的爬取,并提供了详细的步骤和代码。其中,主要涉及到获取微博评论的接口 URL 和参数,以及如何构造请求头和发送 GET 请求。此外,还讲解了翻页爬取的方法和实现,以及如何将爬取到的数据保存为 CSV 文件。通过本文的学习,读者可以掌握使用 Python 进行微博评论爬取的基本技能。

csdn_strive的博客 2823

用python语言爬虫爬取微博评论--上--初步爬虫(超详细版,大学生不骗大学生)

但是我们发现这个并不是像我们想的一样,将网页的文本用文字的方式呈现,那么接下来我们要用到一个方法,让我们能够用文字的方式输出网页数据----->定义请求头。为什么要定义请求头,因为从网站的设置初衷,它是不想服务于我们的爬虫程序的,网站正常只想服务于客户的访问服务,那么我们要将我们的爬虫程序伪装成为正常的服务。

m0_68325382的博客 6018

【2023微博评论爬虫】用python爬上千条微博评论,突破15页限制!

马哥原创:用python爬微博评论,含:微博id、评论页码、评论id、评论时间、评论点赞数、评论者IP归属地、评论者姓名、评论者id、评论者性别、评论者关注数、评论者粉丝数、评论内容。

马哥的专栏 5062
上一篇: python实现图片嗅探工具——自编driftnet
下一篇: python快手爬虫:解决粉丝数、 关注数等字体加密
Python_sn
博客等级 码龄6年 324粉丝 290原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值