【GitHub精选项目】微博数据采集:weibo-crawler使用指南
【GitHub精选项目】微博数据采集:weibo-crawler使用指南
前言
本文为大家带来的是
dataabc
的weibo-crawler
开源项目,这是一个高效的下载微博数据的开源项目。它可以轻松的帮助用户获取微博数据从而进行分析。
在众多社交媒体平台中,微博以其海量的用户和实时的信息流成为了研究的热点。而weibo-crawler
帮可以助研究人员、数据分析师甚至是好奇的个人用户,高效地从微博抓取数据。
本文介绍的不够详尽!仅展示该项目的一小部分!读者朋友们可以前往项目主页进行全面的学习!
项目地址:https://github.com/dataabc/weibo-crawler
项目概览
weibo-crawler 是一个开源的微博爬虫项目,能够自动化地抓取微博用户的帖子、评论、点赞数和转发数等信息。该项目使用 Python
开发,简化了数据收集的过程,支持将数据保存为CSV和JSON等格式,方便后续的数据分析工作。
它采集的数据也是很全面的!
CSV文件
下载图片
下载视频
克隆项目
git clone
最简单的,在命令行工具输入以下命令即可,如下图所示:
git clone https://github.com/dataabc/weibo-crawler.git
Download ZIP
如果没有安装Git,那么使用 Download ZIP
也是个不错的选择。
运行程序
本项目是由Python
编程语言所编写,默认读者朋友们已经安装好了。
配置环境
step 1 安装依赖
去到项目目录下,安装所需要的库。在命令行执行以下命令即可。
pip install -r requirement.txt
step 2 定义参数
安装好项目所需要的依赖之后,可以打开config.json
进行程序运行之间必要的配置
- 以下是完整的参数
{
"user_id_list": ["1669879400"],
"only_crawl_original": 1,
"remove_html_tag": 1,
"since_date": "2018-01-01",
"write_mode": ["csv"],
"original_pic_download": 1,
"retweet_pic_download": 0,
"original_video_download": 1,
"retweet_video_download": 0,
"download_comment":1,
"comment_max_download_count":1000,
"download_repost": 1,
"repost_max_download_count": 1000,
"user_id_as_folder_name": 0,
"cookie": "your cookie",
"mysql_config": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "123456",
"charset": "utf8mb4"
},
"mongodb_URI": "mongodb://[username:password@]host[:port][/[defaultauthdb][?options]]"
}
具体的配置参数需要去看官方文档 的介绍,我们这里试运行只需要关注 user_id_list
这个参数即可。
设置user_id_list
具体如何获取
user_id
见如何获取user_id。
user_id_list
是要爬取的微博用户的id列表,可以直接在配置中指定,也可以将其设置为一个txt文件的路径。
- 直接指定:将用户id以列表形式列出,如:(这这里我们选择了第一种方式)
"user_id_list": ["1223178222", "1669879400", "1729370543"]
- 使用txt文件:创建一个txt文件,每行包含一个用户id和可选的注释(如用户昵称),id和注释之间以空格分隔,示例如下:
1223178222 胡歌
1669879400 迪丽热巴
1729370543 郭碧婷
然后将文件路径指定给 user_id_list
,例如:
"user_id_list": "user_id_list.txt"
本次试运行的config.json
since_date
:10 是取最近10天的内容
{
"user_id_list": ["1223178222", "1669879400", "1729370543"],
"only_crawl_original": 0,
"since_date": 10,
"start_page": 1,
"write_mode": [
"csv"
],
"original_pic_download": 1,
"retweet_pic_download": 0,
"original_video_download": 0,
"retweet_video_download": 0,
"download_comment": 1,
"comment_max_download_count": 100,
"download_repost": 1,
"repost_max_download_count": 100,
"user_id_as_folder_name": 0,
"remove_html_tag": 1,
"cookie": "your cookie",
"mysql_config": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "123456",
"charset": "utf8mb4"
},
"mongodb_URI": "mongodb://[username:password@]host[:port][/[defaultauthdb][?options]]"
}
运行方式
命令行
在做完上述的配置操作之后,就可以运行程序了!
运行 weibo.py
,
python weibo.py
运行情况如下图所示,
docker
此项目也支持
docker
运行,
在项目根路径创建一个名为docker-compose.yml
的文件,填下以下内容:
path/to
修改成你的项目的根路径!
version: '3'
services:
weibo-crawler:
build:
context: .
dockerfile: Dockerfile
volumes:
- path/to/config.json:/app/config.json
- path/to/weibo:/app/weibo
environment:
- schedule_interval=1 # 可选:循环间隔(分钟)
然后在命令行输入以下命令启动
docker-compose up -d
结果展示
可以参考前面的项目概览或项目文档,这里不做具体展示!
运行结果如下图所示:
- 程序在项目根目录下生成了对应的文件!
迪丽热巴
注意事项
- 尊重版权:在使用weibo-crawler时应尊重微博用户的版权和隐私,仅用于非商业性研究和学习目的。
- 遵守法律法规:在使用该工具时,应遵守当地法律法规,不得用于任何违法活动。
- 配置Cookie:获取并配置自己的微博Cookie到
config.json
文件中,因为有效的Cookie对于获取部分受限内容是必需的。
总结
通过这个工具,用户可以自动化地抓取微博用户的帖子、评论、点赞数和转发数等信息,支持将数据保存为CSV和JSON等格式,大大简化了数据收集的过程。
本文详细介绍了weibo-crawler的项目概览、克隆项目、运行程序及结果展示等步骤,旨在帮助用户快速上手使用这个工具。在实际使用过程中,用户应当尊重版权、遵守法律法规,并妥善配置个人的微博Cookie,以确保爬虫的正常运行及数据获取的合规性。
美中不足的是,作者并没有在 Releases
发布编译好的拿来即用的版本。但是我相信能去逛Github
网站的小伙伴,动手能力都不会太差!所以这也是小问题~
后话
本次分享到此结束,
see you~~🎈🎈
- 点赞
- 收藏
- 关注作者
评论(0)