2019-07-07-python-weibo-scrapy

2024-07-07-python-weibo-scrapy 对于大不多数爬虫,首先考虑的应该是从手机端入手,因为手机端的网页相对PC端来说内容更为简洁,并且爬起来容易许多。为了构造所需的爬虫,首先需要分析目标网站的网站结构。以微博为例,打开微博手机端网站输入密码登陆之后进入的就是首页。首页上的内容就是关注的人发布的微博。比如下图:红色的数字1、2就是指一条条关注的人发布的微博。到这里,一个简单的爬取思路就出来了:首先是打开网址;然后是登陆首页;最后就是按照页码顺序把一条条微博提取出来。 阅读详情
titlecategorylayouttagsdate
如何打造一个个人微博爬虫
python
post
python
2019-07-07 18:00:24

本文介绍使用scrapy爬虫框架打造一个自己的微博客户端。主要包括以下内容:

  • 1.介绍如何分析构造微博爬虫;
  • 2.使用scrapy进行网页内容提取。

1.分析如何构造爬虫流程

对于大不多数爬虫,首先考虑的应该是从手机端入手,因为手机端的网页相对PC端来说内容更为简洁,并且爬起来容易许多。所以本文爬取的就是微博的手机端网站:https://weibo.cn/。 为了构造所需的爬虫,首先需要分析目标网站的网站结构。以微博为例,打开微博手机端网站输入密码登陆之后进入的就是首页。首页上的内容就是关注的人发布的微博。比如下图:

Smiley face

红色的数字1、2就是指一条条关注的人发布的微博。

到这里,一个简单的爬取思路就出来了:首先是打开网址;然后是登陆首页;最后就是按照页码顺序把一条条微博提取出来。 用流程图表述为: Smiley face

2. 使用scrapy进行网页内容提取

本文对微博手机端的分析使用的是Chrome浏览器自带的工具。在浏览器按下F12即可打开。如下图所示:

Smiley face

由上图可以得出以下结论:

打开任意一条微博ID的页面:

Smiley face

按照上图的箭头点击顺序,可以看到微博内容的标签为<div class=’c’ id=’M_’>,因而根据标签就可以提取到微博的内容了。

上述几个步骤用代码表述为:

    def parse(self, response):#解析页码
        page_num=0
        if response.xpath("//input[@name='mp']") == []:#这里处理微博为空的情况
            page_num = 1
        else:
            page_num = (int)(response.xpath("//input[@name='mp']")[0].attrib['value'])
        # https://weibo.cn/?page=2
        for i in range(1,page_num+1):#page 1-40
            yield response.follow(f'https://weibo.cn/?page={i}', callback=self.parse_id)

    def parse_id(self,response):#提取对应页码的微博ID
        ids=response.xpath('//div[contains(@id,"M_HC")]/@id').getall()
        for id in ids:#parse weibos
            #https://weibo.cn/comment/HAwmslrRT
            yield response.follow(f'https://weibo.cn/comment/{id.replace(r"M_","")}', callback=self.parse_weibo)

    def parse_weibo(self,response):#提取对应微博ID的内容
        content=response.xpath('//div[@id="M_"]')[0].xpath('string()').extract()[0]
        self.writer.write(content+'\n\n')

以上介绍了构建个人微博客户端的关键步骤,具体可以参考gihtub上的开源代码。

python3--爬虫--微博爬虫实战 爬取目标用户的微博 写在前面:微博有三个网站,不同的网站爬取得难度不同,分别是 网页端:这里写目录标题爬取目标用户的微博一、目标页面解析页面内容整个过程结果展示 一、目标页面 首先确定好目标用户,这里选择知名演员李现的微博账号。爬取数据不用于非法或者违规的用途,单纯用于学习研究。 打开李现的微博主页,在链接中可以看到他的账号id是2360812967,这个是用来识别每个微博账号的id。 这是打开网页的源代码,会发现里面没有我们直接看到的如图中的内容,因为页面是通过Ajax动态渲染得到的,所以直接的网页源代 阅读详情

相关推荐

Python 超简单爬取新浪微博数据

新浪微博的数据可是非常有价值的,你可以拿来数据分析、拿来做网站、甚至是*****。不过很多人由于技术限制,想要使用的时候只能使用复制粘贴这样的笨方法。没关系,现在就教大家如何批量爬取微博的数据,大大加快数据迁移速度! 我们使用到的是第三方作者开发的爬虫库weiboSpider(有工具当然要用工具啦)。 1. 下载项目 进入下方的网址,点击Download ZIP下载项目文件 github.com/dataabc/wei… 或者 你有git的话可以在cmd/te...

four91的博客 6427

【微博爬虫教程&实例】基于requests、mysql爬取大数据量博主关键字下博文及评论

(关键词:手把手教程、反爬、数据库、python爬虫、微博爬虫、较大数据量、数据简单过滤、ip代理池)本教程适合有实际应用需求的python爬虫入门者阅读,该实例针对目标网站微博在requests库爬虫的基础上做了一些问题的优化,最终实例可用满足于较大数据量的数据爬取需求。作者更希望从较入门内容出发制作教程,您可以对本文内容稍作省略。完整实例源码将放置在文末github链接中。

otonashi_ayana的博客 9688

2024年Python最新2024-07-07-python-weibo-scrapy

本文介绍使用scrapy爬虫框架打造一个自己的微博客户端。主要包括以下内容:1.介绍如何分析构造微博爬虫;2.使用scrapy进行网页内容提取。

2401_84564025的博客 908

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

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

weixin_51167671的博客 2万+

使用 Python Scrapy 爬取微博内容【一】

开始正文前,我先阐述下我的选择的解决方案:Scrapy+beautifulsoup+Re+pymysql,爬取weibo手机版(反爬技术较少,比较容易) Scrapy:爬虫框架,不多说 beautifulsoup:优秀的解析库,我用来解析lxml Re:正则表达式 pymysql:MySql思路简介跳过繁琐的Scrapy 各个功能模块的介绍,我说下我的大致思路: 每个用户都会有自己

1万+

最新python爬虫抓取新浪微博千万级数据,scrapy思路+架构+源码

一、前期工作... 3 1.1 爬取目标... 3 1.2 准备工作... 3 1.3 爬取思路... 3 1.4 爬取分析... 3 二、项目实战... 5 2.1 新建项目... 5 2.2 创建Item.. 6 2.3 提取数据... 8 2.4 数据清洗... 12 2.5数据存储... 13 2.6 Cookies池对接... 15 2.7代理池对接... 15 ...

Weiker的博客 1万+

【附代码】python爬取新浪微博(微博内容,微博评论,用户信息等)并进行情绪分析

微博数据抓取并对数据进行情绪分析微博数据爬虫开始爬虫之前请先了解代码实现文本情绪分析 本文包含内容:借助Python抓取微博数据,并对抓取的数据进行情绪分析 代码实现:微博用户的行为与情感分析 微博数据爬虫 开始爬虫之前请先了解 Q:有哪些微博提供的数据是我们可以利用的? A:微博数据可以分为几类:博文相关数据,用户信息数据,单条微博评论数据,社交关系网络数据。其中 博文相关数据包括:微博的UR...

cindy_1102的博客 3万+

python爬虫——scrapy+selenium爬取新浪微博及评论

本文主要对爬取过程中所用到的知识做简单总结,最后有项目链接。 一、项目简介 本项目利用python的scrapy框架+selenium模拟登陆微博来爬取带有关键字的微博及微博下面的评论(1 、2级评论)。 当时自己比较关注“小凤雅事件”,而微博又是舆论的战场,就想爬取“小凤雅事件”的相关微博以及评论,看看大家的关注点在哪里,于是就行动起来了。 下面是对主要技术的介绍。 二、scrapy介...

csdn950212的博客 7669

Python Scrapy框架爬取微博数据

-1.前言   最近导师接到了一个项目,要爬取社交网路的数据,其中有一部分是爬取微博,Twitter和Facebook.目前实现了微博部分.先写着. 整个工程是使用的python3.6+Scray框架+MySQL数据库. 整个项目是在一个github开源的项目的基础上进行修改. 由于整个项目具有保密性,所以源码就不能放出了,下面和大家交流思路. 未完待续,有空我就会更新一下. 0.总体...

guomei_eros的博客 2098

【爬虫实战】04 Scrapy爬取微博并绘制词云图

Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。通常我们可以很简单的通过 Scrapy 框架实现一个爬虫,抓取指定网站的内容或图片。Scrapy Engine(引擎): 负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递等。Scheduler(调度器)

Deeeeeeeeepl的博客 2921

Python3网络爬虫开发实战,Scrapy 爬取新浪微博

前面讲解了 Scrapy 中各个模块基本使用方法以及代理池、Cookies 池。接下来我们以一个反爬比较强的网站新浪微博为例,来实现一下 Scrapy 的大规模爬取。 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:101677771 1. 本节目标 本次爬取的目标是新浪微博用户

Python学习Q群696455390 2925

python实现微博爬虫【scrapy框架】

python实现微博爬虫【scrapy框架】

weixin_52938961的博客 3907

使用Python开发的基于新浪微博API的迷你微博网站+源码(毕业设计&课程设计&项目开发)

使用Python开发的基于新浪微博API的迷你微博网站+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 使用Python开发的基于新浪微博API的迷你微博网站+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 使用Python开发的基于新浪微博API的迷你微博网站+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 使用Python开发的基于新浪微博API的迷你微博网站+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 使用Python开发的基于新浪微博API的迷你微博网站+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~

推荐使用:WEIBO\_SCRAPY - 高效抓取微博数据的Python框架

推荐使用:WEIBO_SCRAPY - 高效抓取微博数据的Python框架 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在数字时代,社交媒体的数据成为了研究社会趋势、营销策略以及公众情绪的重要资源。WEIBO_SCRAPY是一个专为Python开发者设计的开源框架,它使得抓取SINA WEIBO信息变得简单且高效。这个框架采用多线程技术,支持模拟登录,并提供了方便的...

gitblog_00044的博客 694

抖音直播小风车跳转企业微信全攻略:企业号申请+落地页配置详解

本文详细解析了抖音直播小风车跳转企业微信的全流程,包括企业号申请、小风车配置和落地页优化。通过实战指南,帮助企业高效实现私域流量沉淀,提升直播转化率,特别适合电商和营销从业者参考。

weixin_29289821的博客 612

论文阅读笔记---Deep HDR Video from Sequences with Alternating Exposures

Kalantari N K, Ramamoorthi R. Deep HDR Video from Sequences with Alternating Exposures[C]//Computer Graphics Forum. 2019, 38(2): 193-205. 摘要: 在本文中,提出了一种基于学习的方法来,我们使用两个顺序卷积神经网络(CNN)对整个HDR视频重建过程进...

qq_25283239的博客 1446
上一篇: 2019-07-01-ubuntu-talib-install-error
下一篇: 2019-07-08-xpath
android_ruben
博客等级 码龄11年 106粉丝 166原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值