源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。 X5 Z- V* D' \5 j% k% {- c
具体的写入文件类型如下:
+ o& w: Q. [% E/ l1)写入txt文件(默认)5 f: V6 Q: n; m$ S4 n! i3 F
2)写入csv文件(默认)
: J x+ @% o* Y% c- _7 f Z3)写入json文件(可选)- F9 `" c6 } a% O. S% Q
4)写入MySQL数据库(可选)
2 Y$ d9 B% }3 A1 L/ e9 A5 R$ J5)写入MongoDB数据库(可选)
: S+ B$ A) |" `* G! e! i3 y6)下载用户原创微博中的原始图片(可选)
. `# R8 L' y+ }5 @ B9 Q+ t7)下载用户转发微博中的原始图片(免cookie版特有)
) { C% @/ i$ V0 ~- J& l8)下载用户原创微博中的视频(可选)
1 L( Y* a& V3 ~0 U) ^9)下载用户转发微博中的视频(免cookie版特有), I$ X" R8 S1 c/ D; {8 I
10)下载用户原创微博Live Photo中的视频(免cookie版特有)
2 e6 v7 b9 K3 H11)下载用户转发微博Live Photo中的视频(免cookie版特有)! N1 B2 q- g, l) v' ]0 t0 R o
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。* R. o+ k/ `" _1 j2 h
1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示: ^9 O9 h2 i& M
1 A) |' K) _! ]4 x0 j8 a0 X2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。
$ m, q" b; H- w/ D1 j! 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安装以下依赖包,当然你也可以单独安装。; D: ~ ?% ^0 A3 D
requests==2.22.00 \9 P- b1 M! Z
jieba==0.42.17 ~& p+ y: D, q Y- p/ z4 Z
wordcloud==1.6.0. z6 W( z7 m0 r2 f0 i9 g$ U7 P
scipy==1.2.1
6 a+ K( n" q( v8 Pseaborn==0.10.0( u7 v* M1 Y% I8 P. ~
pandas
/ a* x3 G/ o; \3 o1 B5 elxml! }5 N2 ?1 f8 K( f! w8 @
tqdm# Z0 I. l& t$ }( ]8 H# k
4、输入命令$ python weibo.py执行脚本。9 I8 r" V# H- S6 y
+ u" `8 Q) U0 e: F4 r5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。8 a4 C+ Q# ~ N( D: a3 R- B
) k w {3 j) k+ B! Q5 N0 ^点击下载cookie版代码 点击下载免cookie版代码
: O8 `5 S- u$ l0 R4 M9 E5 S, w; B; D0 K; D- d9 h8 m( K: H
|