源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。
# ~. \- {/ ]4 I( n! n/ X. o+ g具体的写入文件类型如下:0 q) _& O, Z. x1 D+ F1 M% l
1)写入txt文件(默认)' B. c# }1 F( H% C2 @
2)写入csv文件(默认)
8 W9 c1 o# b% S6 a3)写入json文件(可选)# B! g/ e/ W* C2 L# l$ v# F# X% Z: V
4)写入MySQL数据库(可选), j! i/ R/ o) e7 N
5)写入MongoDB数据库(可选)
! Z A! m: Y6 X2 o6)下载用户原创微博中的原始图片(可选)$ s& S9 L Z1 L( ?
7)下载用户转发微博中的原始图片(免cookie版特有)
. M+ w7 _6 e5 L w8)下载用户原创微博中的视频(可选)
) r- {/ |/ w( I. [9)下载用户转发微博中的视频(免cookie版特有)
+ z) D/ E3 ~0 }1 o: Z' {- L" T/ _10)下载用户原创微博Live Photo中的视频(免cookie版特有): z5 S$ ?- {8 v X) c
11)下载用户转发微博Live Photo中的视频(免cookie版特有)4 P% _" I9 a+ \, g
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。
' l( e0 r- H' k1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示:
8 |, k2 z0 R- |# ?
6 |1 C" Z+ Y9 m$ B; d9 o" L3 i2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。. f) [$ J( j5 h1 Q% X! {0 z
{
"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安装以下依赖包,当然你也可以单独安装。
2 s! n7 a, {" V: C8 z5 Frequests==2.22.0
! G) l9 q5 l) w7 L/ pjieba==0.42.1
! F5 D/ S$ \0 ^wordcloud==1.6.02 P b! h: N! Y' `
scipy==1.2.1! \3 g8 b0 Q. B' \2 U7 O" P& B
seaborn==0.10.0
K+ E! N% a- Spandas
% P0 u( i# B# d7 K2 Vlxml1 }, U/ @& O+ M. c; k. l5 `
tqdm, W; U! y# J, d* x4 u) C, j
4、输入命令$ python weibo.py执行脚本。* N* b; z: H6 I7 G( K4 o! H b
7 A5 t' y( v( g- b
5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。
: ~; Z( N9 g/ { _2 A3 a
1 V: j6 Y/ ~- W2 x% _0 L
点击下载cookie版代码 点击下载免cookie版代码
/ l6 k/ Q1 E6 w
: R, n O' M* v A; E7 n6 m |