整理一下文章 《[数据分析] 简书在微博上的分享情况》 的代码。
微博爬虫的难点:
- 登录问题
之前我用了两种方式:1)模拟登录,手动输入验证码,方法见文尾的链接《【图解】Python模拟登录新浪微博》;2)直接用Cookie,把登录过的Cookie复制粘贴到代码中,代码中WeiboSpider
中的方式即是。
这次参考了网上代码,使用的用户名+密码的方式登录,注意不是直接登录到新浪微博,而是新浪SSO。
https://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.15)
cookies.py
中使用户名密码登录,获取cookie,在middleware.py
中设置请求request
的cookie。为了防止Ban,可以多帐号随机cookie的方式。
- 反爬虫措施
代码中没有加浏览器随机请求头(参见之前文章中有),随机代理IP,有空补上。
代码GitHub:https://github.com/ppy2790/weibo2
PS: 之前的文章:
【图解】Python模拟登录新浪微博