功能

连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。

具体的写入文件类型如下:

写入txt文件(默认)

写入csv文件(默认)

写入json文件(可选)

写入MySQL数据库(可选)

写入MongoDB数据库(可选)

下载用户原创微博中的原始图片(可选)

下载用户转发微博中的原始图片(免cookie版特有)

下载用户原创微博中的视频(可选)

下载用户转发微博中的视频(免cookie版特有)

下载用户原创微博Live Photo中的视频(免cookie版特有)

下载用户转发微博Live Photo中的视频(免cookie版特有)

当然,如果你只对用户信息感兴趣,而不需要爬用户的微博,也可以通过设置实现只爬取微博用户信息的功能。

程序也可以实现爬取结果自动更新,即:现在爬取了目标用户的微博,几天之后,目标用户可能又发新微博了。通过设置,可以实现每隔几天增量爬取用户这几天发的新微博。具体方法见定期自动爬取微博。

本程序需要设置用户cookie,以获取微博访问权限,后面会讲解如何获取cookie。如需免cookie版,大家可以访问https://github.com/dataabc/weibo-crawler,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。

如果想要获得大量微博,见如何获取大量user_id部分。

另外,推荐下另一个程序weibo-search。该程序可以连续获取一个或多个微博关键词搜索结果,并将结果写入文件(可选)、数据库(可选)等。所谓微博关键词搜索即:搜索正文中包含指定关键词的微博,可以指定搜索的时间范围。对于非常热门的关键词,一天的时间范围,可以获得1000万以上的搜索结果,N天的时间范围就可以获得1000万 X N搜索结果。对于大多数关键词,一天产生的相应微博数量应该在1000万条以下,因此可以说该程序可以获得大部分关键词的全部或近似全部的搜索结果。而且该程序可以获得搜索结果的所有信息,本程序获得的微博信息该程序都能获得。

输出

本部分为爬取到的字段信息说明,为了与免cookie版区分,下面将两者爬取到的信息都列出来。如果是免cookie版所特有的信息,会有免cookie标注,没有标注的为二者共有的信息。

用户信息

用户id:微博用户id,如"1669879400",其实这个字段本来就是已知字段

昵称:用户昵称,如"Dear-迪丽热巴"

性别:微博用户性别

生日:用户出生日期

所在地:用户所在地

学习经历:用户上学时学校的名字和时间

工作经历:用户所属公司名字和时间

阳光信用(免cookie版):用户的阳光信用

微博注册时间(免cookie版):用户微博注册日期

微博数:用户的全部微博数(转发微博+原创微博)

关注数:用户关注的微博数量

粉丝数:用户的粉丝数

简介:用户简介

头像url(免cookie版):用户头像url

高清头像url(免cookie版):用户高清头像url

微博等级(免cookie版):用户微博等级

会员等级(免cookie版):微博会员用户等级,普通用户该等级为0

是否认证(免cookie版):用户是否认证,为布尔类型

认证类型(免cookie版):用户认证类型,如个人认证、企业认证、政府认证等

认证信息:为认证用户特有,用户信息栏显示的认证信息

微博信息

微博id:微博唯一标志

微博内容:微博正文

头条文章url:微博中头条文章的url,若微博中不存在头条文章,则值为''

原始图片url:原创微博图片和转发微博转发理由中图片的url,若某条微博存在多张图片,每个url以英文逗号分隔,若没有图片则值为"无"

视频url: 微博中的视频url,若微博中没有视频,则值为"无"

微博发布位置:位置微博中的发布位置

微博发布时间:微博发布时的时间,精确到分

点赞数:微博被赞的数量

转发数:微博被转发的数量

评论数:微博被评论的数量

微博发布工具:微博的发布工具,如iPhone客户端、HUAWEI Mate 20 Pro等

结果文件:保存在当前目录weibo文件夹下以用户昵称为名的文件夹里,名字为"user_id.csv"和"user_id.txt"的形式

微博图片:原创微博中的图片和转发微博转发理由中的图片,保存在以用户昵称为名的文件夹下的img文件夹里

微博视频:原创微博中的视频,保存在以用户昵称为名的文件夹下的video文件夹里

微博bid(免cookie版):为免cookie版所特有,与本程序中的微博id是同一个值

话题(免cookie版):微博话题,即两个#中的内容,若存在多个话题,每个url以英文逗号分隔,若没有则值为''

@用户(免cookie版):微博@的用户,若存在多个@用户,每个url以英文逗号分隔,若没有则值为''

原始微博(免cookie版):为转发微博所特有,是转发微博中那条被转发的微博,存储为字典形式,包含了上述微博信息中的所有内容,如微博id、微博内容等等

实例

以爬取迪丽热巴的微博为例,我们需要修改config.json文件,文件内容如下:

{

"user_id_list": ["1669879400"],

"filter": 1,

"since_date": "1900-01-01",

"write_mode": ["csv", "txt", "json"],

"pic_download": 1,

"video_download": 1,

"cookie": "your cookie"

}

对于上述参数的含义以及取值范围,这里仅作简单介绍,详细信息见程序设置。

user_id_list代表我们要爬取的微博用户的user_id,可以是一个或多个,也可以是文件路径,微博用户Dear-迪丽热巴的user_id为1669879400,具体如何获取user_id见如何获取user_id;

filter的值为1代表爬取全部原创微博,值为0代表爬取全部微博(原创+转发);

since_date代表我们要爬取since_date日期之后发布的微博,因为我要爬迪丽热巴的全部原创微博,所以since_date设置了一个非常早的值;

write_mode代表结果文件的保存类型,我想要把结果写入txt文件、csv文件和json文件,所以它的值为["csv", "txt", "json"],如果你想写入数据库,具体设置见设置数据库;

pic_download值为1代表下载微博中的图片,值为0代表不下载;

video_download值为1代表下载微博中的视频,值为0代表不下载;

cookie是爬虫微博的cookie,具体如何获取cookie见如何获取cookie,获取cookie后把"your cookie"替换成真实的cookie值即可。

cookie修改完成后运行程序:

$ python weibospider.py

程序会自动生成一个weibo文件夹,我们以后爬取的所有微博都被存储在这里。然后程序在该文件夹下生成一个名为"Dear-迪丽热巴"的文件夹,迪丽热巴的所有微博爬取结果都在这里。"Dear-迪丽热巴"文件夹里包含一个csv文件、一个txt文件、一个json文件、一个img文件夹和一个video文件夹,img文件夹用来存储下载到的图片,video文件夹用来存储下载到的视频。如果你设置了保存数据库功能,这些信息也会保存在数据库里,数据库设置见设置数据库部分。

csv结果文件如下所示:

1669879400.csv

txt结果文件如下所示:

1669879400.txt

json文件包含迪丽热巴的用户信息和上千条微博信息,内容较多。为了表达清晰,这里仅展示两条微博。

json结果文件如下所示:

{

"user": {

"id": "1669879400",

"nickname": "Dear-迪丽热巴",

"gender": "女",

"location": "上海",

"birthday": "双子座",

"description": "一只喜欢默默表演的小透明。工作联系jaywalk@jaywalk.com.cn

python爬去微博签到数据_GitHub - fs6/weiboSpider: 新浪微博爬虫,用python爬取新浪微博数据...相关推荐

  1. Colly 学习笔记(二)——爬虫框架,抓取下载数据(上证A股数据下载)

    Colly 学习笔记(二)--爬虫框架,抓取下载数据(上证A股数据下载) Colly 学习笔记(一)--爬虫框架,抓取中金公司行业市盈率数据 Colly 学习笔记(二)--爬虫框架,抓取下载数据(上证 ...

  2. java 爬数据工具 知乎_知乎爬虫之4:抓取页面数据

    本文由博主原创,转载请注明出处:知乎爬虫之4:抓取页面数据 咱们上一篇分析了知乎的登陆请求和如何拿到粉丝/关注的请求,那么咱们这篇就来研究下如何拿利用Jsoup到咱们想要的数据. 那么咱们说下,首先请 ...

  3. 逆向爬虫18 Scrapy抓取全站数据和Redis入门

    逆向爬虫18 Scrapy抓取全站数据和Redis入门 一.全站数据抓取 1. 什么是抓取全站数据? 我们曾经在过猪八戒,图片之家,BOSS直聘等网站,利用网站官方提供的搜索功能,搜索指定关键词的内容 ...

  4. 知乎爬虫之4:抓取页面数据

    git爬虫项目地址( 终于上传代码了~~~~关注和star在哪里):https://github.com/MatrixSeven/ZhihuSpider(已完结) 附赠之前爬取的数据一份(mysql) ...

  5. python爬取微博热搜并存入表格_python爬虫进阶之爬取微博热搜存入Mysql

    在编程中,我们如果想要把数据转入数据库中,首先会选择 MySQL数据库.因为MySQL数据库体积小.速度快.总体拥有成本低.开放源代码,其有着广泛的应用,例如我们使用python爬虫微博热搜,就可以使 ...

  6. 爬去图片插件_学不会你打我,一个插件爬取亚马逊数据!

    这是一个简单的插件使用教程.从入门到精通大概需要5分钟. 很多亚马逊运营小伙伴在运营过程中需要对市场进行分析,包含但不限于: 竞争对手review,分析消费者痛点,分析好评差评点. QA,分析消费者心 ...

  7. python爬去百度文库资料_Python在线百度文库爬虫(免下载券)

    百度文库,文字类型的资源(如txt, doc, pdf),是可以在前端源码分析获取到的,如果能按照规则合理的提取这些文字资源,就可以实现免下载券获取资源. 作者完成了百度文库的在线版爬虫,只需提供文库 ...

  8. 【python 新浪微博爬虫】python 爬取新浪微博24小时热门话题top500

    一.需求分析 模拟登陆新浪微博,爬取新浪微博的热门话题版块的24小时内的前TOP500的话题名称.该话题的阅读数.讨论数.粉丝数.话题主持人,以及对应话题主持人的关注数.粉丝数和微博数. 二.开发语言 ...

  9. 【爬虫】Scrapy 抓取网站数据

    [原文链接]http://chenqx.github.io/2014/11/09/Scrapy-Tutorial-for-BBSSpider/ Scrapy Tutorial 接下来以爬取饮水思源BB ...

  10. 如何将爬虫获得的数据变为字典的key_Python爬虫第二战 爬取500px图片

    前言: 如今的高速网络极大促进了信息的展示方式,高清图片,视频等成就了我们的视听盛宴.但是,我们获取到的图片或者视频可能是被压缩过的,所以总体上还是有点小瑕疵,今天呢,我给大家带来一篇使用Python ...

最新文章

  1. NBT:设计稳定无毒的抗菌肽杀灭耐药菌
  2. bzoj3791作业*
  3. Chapter 1 First Sight——14
  4. adb 连接某个wifi_一加7 Pro全局强制开启90Hz刷新率的办法(附ADB文件下载)
  5. Linux 用户(user)和用户组(group)管理概述
  6. 全球五大顶级域名一周统计:7月第三周新增超9万个
  7. C#后台,执行前台js 脚本
  8. linux 常用工具
  9. WORD图片批量居中?
  10. PullToRefresh使用详解(四)--利用回调函数实现到底加载
  11. 通过ssh连接Termux
  12. Java实例化类的几种方法
  13. pip cmd下载速度慢解决方案
  14. shuffleNet实现
  15. Data Recovery Strategy Determines Backup Strategy【每日一译】--2012-11-11
  16. 前端框架UMI3基础知识和快速上手
  17. Windows cmd窗口的切换目录命令无法切换盘符
  18. 一文读懂交叉熵和最大似然的关系及在人脸识别中的应用
  19. 6.1. Meanshift和Camshift
  20. 人生的最好状态,是从“满足别人”走向“活出自己”

热门文章

  1. matlab 一阶惯性环节,一阶二阶电路滤波器的软件方式实现
  2. 何宾 单片机原理及应用_单片机原理及应用知识点整理
  3. wpf linux 开发教程 pdf,深入浅出WPF
  4. 中国移动Mas(普通短信)
  5. 小白量化彩票实战(1)彩票分析及爬虫双色球彩票开奖数据
  6. namp常规扫描命令(超详细!推荐)
  7. Ubuntu中下载安装NVIDIA显卡驱动
  8. 叶三《我们唱》-野孩子(眼望着北方)
  9. FileZilla Server超详细配置
  10. data后缀文件解码_对任何格式的文件实现加密与解密软件