源码可以连续爬取一个或多个新浪微博用户(如胡歌、迪丽热巴、郭碧婷)的数据,并将结果信息写入文件或数据库。写入信息几乎包括了用户微博的所有数据,主要有用户信息和微博信息两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见输出部分。
- t% i7 X& R+ S具体的写入文件类型如下:7 s2 ?+ `8 x/ l2 X& Q
1)写入txt文件(默认)! l; I" ?$ m! x1 q6 l t! W
2)写入csv文件(默认)$ z+ ^) Q3 e8 }6 R% k: l. ~5 K
3)写入json文件(可选)
5 S3 y' Z+ [9 W0 I4 O4)写入MySQL数据库(可选)
# ?; E8 P% q' f; J" S6 e5)写入MongoDB数据库(可选)
0 {0 f9 h! u! K; z. q6)下载用户原创微博中的原始图片(可选)- t4 I0 Z0 o/ T0 L1 B" o/ H
7)下载用户转发微博中的原始图片(免cookie版特有)
2 a# H; M& p `; [8)下载用户原创微博中的视频(可选)4 a* ~; ~4 _& s
9)下载用户转发微博中的视频(免cookie版特有)
: G/ } K3 X4 P$ Q( _' Y& A10)下载用户原创微博Live Photo中的视频(免cookie版特有)
4 e# D# G4 z5 }7 z9 L- n8 a11)下载用户转发微博Live Photo中的视频(免cookie版特有)" n: t7 {; e& a9 C( U) a# j
本程序分为设置用户cookie和免cookie两个版本,二者功能类似,免cookie版获取的信息更多,用法更简单,而且不需要cookie。下面以需要设置用户cookie的版本来介绍使用方法,免cookie版使用方法除了第1项,其他基本相同。0 g* n; V3 S$ c/ J2 a* {$ V; I( z
1、打开 https://m.weibo.cn/ 登录你的微博账号获取headers的 cookie ,依此点击Chrome开发者工具中的Network->Name中的weibo.cn->Headers->Request Headers,"Cookie:"后的值即为我们要找的cookie值,复制即可,如图所示: B5 e3 y8 D* H: N+ D2 W1 t/ F
) s: U8 u8 c% Q7 R9 x L# |) p# m
2、下载代码到本地,修改配置文件config.json,这里说明下,user_id_list填你要分析的微博账号uid,可以填多个,如:"user_id_list": ["1223178222", "1669879400", "1729370543"],。filter为1表示分析原创微博,如果分析所有微博填0即可。since_date为从哪天的微博开始分析,然后就是把上面复制的cookie填到对应位置,免cookie版本不用填。9 x) C0 [' h2 M+ z ?( {/ O! q
{
"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安装以下依赖包,当然你也可以单独安装。* f% M' \( f* w/ k& d% O0 @! Q# H3 l- L
requests==2.22.0( R ?3 {* T. [/ }5 ]
jieba==0.42.1
/ b4 l, G. M* a8 ~, @% pwordcloud==1.6.01 x/ j& n, S6 f6 \
scipy==1.2.1
2 U/ i) X# v. F; J+ O* Oseaborn==0.10.0
9 v: l; h( B( w9 ^5 {# tpandas
, u9 l8 R2 T& k1 o. q. i+ ^9 Clxml; B5 q& x: }6 {+ }: g+ W
tqdm
$ S) j! ^9 a" H4 n+ V; Z4、输入命令$ python weibo.py执行脚本。
5 @ A7 u( L, f( w6 x: ]) }2 j* F
7 j7 |, H& Q* C& S' V9 T
5、爬取的csv结果文件内容如下,其他文件类型可以在这里就不再截图。
0 Z$ z! h$ e q
+ l7 m D+ j; _, s1 t: j9 x4 h
点击下载cookie版代码 点击下载免cookie版代码
5 e- e* J! x1 M" e. `3 W7 k3 D1 u3 y9 I; a
|