QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 3382|回复: 0

[Python] 一键爬取微博用户各种信息并保存

[复制链接]

等级头衔

积分成就    金币 : 2861
   泡泡 : 1516
   精华 : 6
   在线时间 : 1322 小时
   最后登录 : 2025-9-17

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2020-6-5 18:32:32 | 显示全部楼层 |阅读模式
       源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。
' H; C$ V* t5 t+ j1 R具体的写入文件类型如下:1 B0 w9 O# Q' @, Y  w7 \
1)写入txt文件(默认)$ q/ u4 {& W4 Y) L
2)写入csv文件(默认)) n: `+ p* X" C
3)写入json文件(可选)
6 \7 z7 q( P* z' c4)写入MySQL数据库(可选)$ I# [" Q2 f- \0 q' B
5)写入MongoDB数据库(可选)1 y0 }3 ]( V/ P7 i
6)下载用户原创微博中的原始图片(可选)9 ^; O0 h5 Q0 u* x
7)下载用户转发微博中的原始图片(免cookie版特有)
( ?! @/ C/ d: j/ n) q, U* X, Q8)下载用户原创微博中的视频(可选)$ Z& f6 i$ o; ]* i8 J/ h- a& z
9)下载用户转发微博中的视频(免cookie版特有)
# G5 W  M' t, s! r% r10)下载用户原创微博Live Photo中的视频(免cookie版特有)
3 ~$ I3 F+ A: |3 c11)下载用户转发微博Live Photo中的视频(免cookie版特有)& w) F9 {" m, _) y8 [# k# V) B
       本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。
$ Q* s) @; }$ N0 U. ~0 x1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示:2 M+ F4 n4 i7 M' V2 \
1.png
* U7 {" `  O7 f2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。; Q4 ]9 M; i; H, D7 E: B5 j
{
    "user_id_list": ["1669879400"],
    "filter": 1,
    "since_date": "2018-01-01",
    "write_mode": ["csv", "txt"],
    "pic_download": 1,
    "video_download": 1,
    "cookie": "your cookie",
    "mysql_config": {
        "host": "localhost",
        "port": 3306,
        "user": "root",
        "password": "123456",
        "charset": "utf8mb4"
    }
}
3、接着执行pip install -r requirements.txt安装以下依赖包,当然你也可以单独安装。: K9 s+ a- G) q+ e' p$ d4 G, f+ ~4 u. n
requests==2.22.0* o  P. Q2 a. j
jieba==0.42.1
5 Y. A( x) @  {+ l9 w  s, a0 Y2 mwordcloud==1.6.03 t& |) U1 d% M
scipy==1.2.1# W8 [. I0 H2 |- g
seaborn==0.10.0( {4 _9 ?( A' P
pandas, e7 N6 u% \8 Y) q& l6 E
lxml
: W, a( I2 o) Dtqdm# j& Z6 p4 ~& o$ ~0 v# g" {
4、输入命令$ python weibo.py执行脚本。* I) |  _5 ^+ v" j9 b6 X
2.png 6 Z. r- ]0 a9 }& s7 K7 \) T9 Y
5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。9 m" i# l4 c. z8 G/ B2 l% k! {0 @
3.png 5 H, |0 J" P, v" p, |
点击下载cookie版代码      点击下载免cookie版代码5 L; d* l! h, Z. l6 q' \; ]6 o; O2 m
/ m2 Q+ o7 T7 x" q$ d' _- O
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2025-10-7 07:35

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表