源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。- N0 G4 K' J+ a; e c
具体的写入文件类型如下:! V; D. c. H. R$ O( w
1)写入txt文件(默认)1 X. v0 W- W% f6 x
2)写入csv文件(默认): b/ o0 j, q% C/ r2 L
3)写入json文件(可选)) L8 T9 Y+ ~, Q2 J7 s9 I
4)写入MySQL数据库(可选)
9 F/ Q; Q$ ~; G, n e5)写入MongoDB数据库(可选)' p2 I$ f8 ^2 S% L$ }. T
6)下载用户原创微博中的原始图片(可选)
N9 Q( z M1 V+ _2 E7)下载用户转发微博中的原始图片(免cookie版特有)) O/ y6 x; ^9 V% n
8)下载用户原创微博中的视频(可选)1 \' z# C0 _: e9 y; P. h
9)下载用户转发微博中的视频(免cookie版特有)! @4 F. R, o1 f/ P# n1 L# N8 z
10)下载用户原创微博Live Photo中的视频(免cookie版特有)
/ {. R, j- ]$ [2 A6 Z$ @0 ~11)下载用户转发微博Live Photo中的视频(免cookie版特有): K( F% U& H6 |1 D$ g$ x; m% a' _, {& u
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。
, N/ g, Q- |) u# S' u3 ^, a6 e) i1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示:! v( Z; ]" i' {9 h6 J2 Y. t7 P
2 t! v! I1 N2 T6 T2 q& Q7 n2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。
1 T2 m7 s! E7 ]{
"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安装以下依赖包,当然你也可以单独安装。 Y& c9 k4 N$ h, |# _6 k- B4 o
requests==2.22.0+ z+ Q0 P2 P8 a1 q. b; _ c
jieba==0.42.17 n/ Q8 t$ i( E1 X5 s8 @
wordcloud==1.6.0
/ o: y7 J9 y6 e! @& D; b$ N4 @scipy==1.2.1/ g" i+ a+ M3 I
seaborn==0.10.0/ ?* |" ?+ P4 m2 w6 Y5 [# @
pandas7 S/ U% r6 |5 y& ?* T3 p
lxml
; e3 r3 C& v- K+ j$ c9 C' K0 htqdm4 W7 `1 S0 [0 t. `5 B; m7 V
4、输入命令$ python weibo.py执行脚本。
6 H- M1 a) p1 P) c# Z8 B3 ^" a
$ i6 ]( A/ y, Z
5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。
Y2 Z9 a4 @ H2 y+ f: ?
& L- m9 }" y% i/ z6 m5 z! s G( W点击下载cookie版代码 点击下载免cookie版代码
6 `# ~6 n7 N" t, T8 n9 |8 Q; e" |/ h, K b& o u1 d$ i
|