抓取微博 GitHub

大侠一枝花 2023-02-04 0

项目亮点 ⭐良好的可重用性和可扩展性。 项目中很多地方都有详细的代码注释,方便阅读。 即使本项目不能完全满足您对微博数据采集和分析的需求,您也可以在本项目的基础上进行二次开发。 项目在微博数据采集和模板分析方面做了大量工作。 项目会长期更新,已经迭代一年多了。 丰富的文档支持:点击wiki查看所有文档。 如果文档还是不能解决你的问题抓取微博,欢迎提issue,维护者看完会积极解答。快速入门

1.阅读项目环境配置,配置项目需要的环境。

2.进入页面下载稳定版应用

3.解压你下载的程序并cd到它的目录

4.快速安装所需的依赖项。 如果要使用虚拟环境来管理依赖项,则使用 env.sh。 如果要使用系统环境,则使用pip3 -r.txt安装所有依赖

5、使用编辑器编辑配置文件.yml,设置MySQL、Redis连接信息、云编码(需注册充值)登录信息和邮件告警信息。 另外还可以配置抓取间隔等,具体请阅读相关注意事项。

6.先手动创建一个名为weibo的数据库,然后使用/.py创建爬虫需要的表。 如果是v1.7.2或更早版本,输入.py即可。

7.(可选,v1.7.3新增)如果想通过Web UI配置爬虫关键字等信息,还需要修改admin//.py中一栏的数据库连接信息,然后在项目中运行根目录

python admin/manage.py makemigrations
python admin/manage.py migrate
python admin/manage.py createsuperuser

生成admin需要的一些数据表,在执行admin/.py的时候,后台会要求输入超级管理员用户名,邮箱和密码,比如我输入test,,,然后就成功创建了超级管理员管理员。

8、我们需要在爬虫程序启动前预先插入微博账号和密码以及一些种子数据。 比如你要抓取一个用户,你需要在表中插入他的uid。 uid可以通过打开用户主页,点击查看页面源码,搜索oid获取。 如果你想通过微博的搜索界面搜索关键词,需要在表格中插入你要搜索的关键词。 如果您完成了第 7 步,您可以通过 Web UI 配置它。通过运行

管理员/.py 0.0.0.0:8000

启动爬虫配置后台。 然后在浏览器中输入:8000/admin 即可访问爬虫配置程序。 在登录界面输入刚刚创建的用户名test和密码,然后在微博配置栏中进行配置。 请注意,内置网络无法实现生产级别的稳定性。 如果需要在生产环境中使用,推荐使用或者uwsgi作为web,作为进程管理器使用。

9.配置完成后,通过

-A任务。 -Q ,,,, -l 信息 -c 1

启动。 注意这里的-Q表示本机可以执行哪些任务。 有关详细信息,请阅读所有任务及其描述。 -c表示并发数,-l表示日志级别。

以上命令可以在多台机器上执行,达到分布式爬取的目的。 我们只需要在其他机器上安装项目需要的依赖(通过env.sh或pip3 -r .txt),是不是很简单?

10. 至此,我们已经做好了所有的准备工作。 现在我们需要将任务发送到。 有两种方式: 1)通过执行/.py登录,其他任务发送操作类似。 2)既然我们使用定时机制来处理微博小时失效的问题,达到不间断爬取的目的,那么我们可以在任意节点上执行

击败 -A 任务。 -l 信息

启动一个,会定时发送任务执行,注意只能有一个,否则任务可能会重复执行。 时间在 tasks/.py 文件中设置。

到这里所有的配置都已经完成了。 如果您在上述过程中遇到问题抓取微博,请耐心浏览项目的所有文档。 如果在使用过程中还有不明白或者有什么问题,可以提issue。

捐赠作者

如果项目对您有用或有启发,不妨通过微信或支付宝进行小额捐赠,支持项目的持续维护和发展。