GitHub:新浪微博爬虫,用 Python 采集新浪微博数据

2020-06-21 21:15:52 +08:00
 zhijieju

hello,小伙伴们,大家好,今天给大家分享的开源项目是:weiboSpider,看名字也可以猜到这个项目是做什么的了!没错,这个开源项目就是采集新浪微博一个或多个用户(如:胡歌、迪丽热巴、郭碧婷)数据,并将结果信息写入文件或数据库,写入信息几乎包括用户微博的所有数据,包括用户信息和微博信息两大类。这个开源项目需设置 cookie 来获取微博访问权限,后面会讲解如何获取 cookie 。如果不想设置 cookie,可以使用免 cookie 版,二者功能类似。

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

  1. 写入 txt 文件(默认)
  2. 写入 csv 文件(默认)
  3. 写入 json 文件(可选)
  4. 写入 MySQL 数据库(可选)
  5. 写入 MongoDB 数据库(可选)
  6. 下载用户原创微博中的原始图片(可选)
  7. 下载用户转发微博中的原始图片(免 cookie 版特有)
  8. 下载用户原创微博中的视频(可选)
  9. 下载用户转发微博中的视频(免 cookie 版特有)
  10. 下载用户原创微博 Live Photo 中的视频(免 cookie 版特有)
  11. 下载用户转发微博 Live Photo 中的视频(免 cookie 版特有)

项目列表


自定义字段


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

用户信息


微博信息

运行环境


部署项目


源码安装

$ git clone https://github.com/dataabc/weiboSpider.git
$ cd weiboSpider
$ pip install -r requirements.txt

或者

$ python3 -m pip install weibo-spider

运行程序


源码安装的用户可以在 weiboSpider 目录运行如下命令,pip 安装的用户可以在任意有写权限的目录运行如下命令

$ python3 -m weibo_spider

第一次执行,会自动在当前目录创建 config.json 配置文件,配置好后执行同样的命令就可以获取微博了。如果你已经有 config.json 文件了,也可以通过 config_path 参数配置 config.json 路径,运行程序,命令行如下:

$ python3 -m weibo_spider --config_path="config.json"

个性化定制程序(可选)


本部分为可选部分,如果不需要个性化定制程序或添加新功能,可以忽略此部分。

本程序主体代码位于 weibo_spider.py 文件,程序主体是一个 Spider 类,上述所有功能都是通过在 main 函数调用 Spider 类实现的,默认的调用代码如下:

config = get_config()
wb = Spider(config)
wb.start()  # 爬取微博信息

用户可以按照自己的需求调用或修改 Spider 类。通过执行本程序,我们可以得到很多信息。

定期自动爬取微博(可选)


要想让程序每个一段时间自动爬取,且爬取的内容为新增加的内容(不包括已经获取的微博),请查看定期自动爬取微博

如何获取 cookie


要了解获取 cookie 方法,请查看cookie 文档

如何获取 user_id


要了解获取 user_id 方法,请查看user_id 文档,该文档介绍了如何获取一个及多个微博用户 user_id 的方法。

开源地址: https://github.com/dataabc/weiboSpider

感兴趣的老铁不防去应用一下,一来可以参考一下作者的编码风格,二来对刚刚入门或者是入门不久的朋友提供一个采集数据的思路。

今天的推荐不知道大家喜不喜欢?如果大家喜欢话,请在文章底部留言或点赞,以表示对我的支持,你们的留言,点赞,转发关注是我持续更新的动力,peace !

关注公众号回复:"1024",免费领取一大波学习资源,先到先得哦!

1828 次点击
所在节点    GitHub
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/683551

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX