源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。% g- r2 p, Q" b# a C; D$ B$ K0 M/ B3 o: B
具体的写入文件类型如下:
% X- {. R3 S! f: [4 l1)写入txt文件(默认)
6 g7 ~; e' v( g1 w! T; W9 F2)写入csv文件(默认)
. d7 ^9 e8 Y! y, A" S6 v3)写入json文件(可选), Q4 O% h5 W- {, g. |8 n. r
4)写入MySQL数据库(可选) d; R- z* b2 G' n# b- Z
5)写入MongoDB数据库(可选)8 `# I0 r x) K+ E/ h! G
6)下载用户原创微博中的原始图片(可选)0 ^1 ]4 {4 A1 q$ W( Y$ A6 ?
7)下载用户转发微博中的原始图片(免cookie版特有)
0 ]* Q' U; S6 h6 l/ A2 A8)下载用户原创微博中的视频(可选)
$ D4 Z w$ n1 V9)下载用户转发微博中的视频(免cookie版特有)& y; o5 p0 j+ k2 C$ ~
10)下载用户原创微博Live Photo中的视频(免cookie版特有)
! C$ h- c3 w4 g# u+ ]; A: p11)下载用户转发微博Live Photo中的视频(免cookie版特有), p: u0 z/ [) n- \
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。
1 q* r/ V7 @8 i5 r/ x" B* C$ r6 U1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示:* i8 m% L4 U6 a- y& z* B3 G
0 u+ ]' d5 s# V5 r
2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。
w; g3 T" N. d6 d' i{
"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安装以下依赖包,当然你也可以单独安装。
/ G/ G, `5 L* O1 yrequests==2.22.0 a- \5 H; `2 K; X2 v/ j$ R
jieba==0.42.1! \# x! E! U0 J$ l: H: |
wordcloud==1.6.0: w* [) v( ~6 }, [& w3 {
scipy==1.2.1
& K& G9 E7 u5 T( t, Fseaborn==0.10.00 U) {) d5 {- R
pandas y3 \9 }/ ~+ g9 B
lxml7 {% Q3 D8 d# x$ b$ h& ~
tqdm
, k# P, @. N% z6 I+ K* D4、输入命令$ python weibo.py执行脚本。
* _; {: w! l- Z+ D/ k
) B8 y& b7 c2 N) X/ g, h, R( w5 l
5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。/ v1 Y+ e* L* n
8 T* x2 N8 t8 e7 Y- J( a0 c" ^- r
点击下载cookie版代码 点击下载免cookie版代码. B% ]/ |0 x+ n. v
u! m+ N V; o- V8 Y |