源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。 D- p, m8 m' ~8 D+ I3 m
具体的写入文件类型如下:
' X* p! b! S' l, F- M4 |1)写入txt文件(默认) K5 M) k4 `' j+ s8 h$ Z& p! ~6 @
2)写入csv文件(默认)
- c, @5 P+ H; [3 k6 P% n3)写入json文件(可选)
- b+ W% A" Z2 I8 e1 M; t- ?4)写入MySQL数据库(可选)$ g8 Q3 n8 O0 M" F6 a
5)写入MongoDB数据库(可选)4 u7 {4 D3 l" b/ v+ H; }* q
6)下载用户原创微博中的原始图片(可选)
' M, S9 J6 J. N& o2 q0 E6 o7)下载用户转发微博中的原始图片(免cookie版特有)
+ k+ |' N/ k8 ]* T% B: O+ J7 J8)下载用户原创微博中的视频(可选)- |% H: r/ j" |: h) [
9)下载用户转发微博中的视频(免cookie版特有)
: J& Z: l( \/ E, E+ S k10)下载用户原创微博Live Photo中的视频(免cookie版特有)
9 u$ o0 e2 m& q% F& t6 q11)下载用户转发微博Live Photo中的视频(免cookie版特有)" j' `5 f# J& E3 K+ g4 i T
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。* C# r$ ~8 X6 y. B* S% `5 F6 L
1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示:1 m' ~5 ~, K3 [2 n2 U" ^
) V) e# H7 V0 o8 L' ]" O& `
2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。
; J0 P1 { z0 f4 c# U% ?{
"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安装以下依赖包,当然你也可以单独安装。5 y' e7 Q3 C& n4 I) N' {
requests==2.22.0. Y, E4 y7 Q) g3 F5 I+ n
jieba==0.42.1
! q% a; @5 }& n" P0 G# ^* P6 @wordcloud==1.6.0
2 [$ s* A& Z) I- R- [6 ^scipy==1.2.1
% Q2 u: _* m9 X0 \seaborn==0.10.0
- d) M$ T! u) ? N, D0 e; opandas
, l( I# |+ x: w# C0 ], }' m! [; Z5 Ylxml/ ^, c( |( S6 |/ i
tqdm& D: `' u) s3 f5 p
4、输入命令$ python weibo.py执行脚本。
) {% B/ V! a9 X7 Z5 R d- N
& B7 s2 R3 o: ?* o* `5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。
- V, j9 l `- }, r1 D# N6 q) G
+ J/ L- [/ o$ r% d点击下载cookie版代码 点击下载免cookie版代码
( Y$ y. C4 U( p9 _3 D/ T
% n9 g2 q2 i/ N' G" U0 } |