前言
Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
日前,在学习中思考,如何整理一份贴吧历史数据出来,从中找寻当年玩贴吧的回忆呢。
于是就有了想从贴吧爬取数据的想法,此代码的由来就是如此。
事前准备
应先安装pycharm,此处使用的是社区版用于个人学习。如商业行为请支持正版pycharm套件。
检查需求
获取贴吧列表的真实链接
分析锁定回复量为筛选值,筛选出指定回复量以上的帖子
将指定帖子的URL导出为表格形式保存
通过URL读取帖子数据,保存一楼数据并存为word文件命名为帖子名(前5个字符).docx
开工
特别注意本文使用的是python3.7,无法直接从pycharm中add进docx包,否则会报错,请务必使用手动下载安装,原因及解决方法如下
解决方法:
1.命令行 卸载docx,pip uninstall docx
2.下载 python_docx-0.8.10-py2.py3-none-any.whl 下载地址
3. 命令行输入pip install python_docx-0.8.10-py2.py3-none-any.whl使用新的docx包
文件名应与下载的时候一致,也许之后会再进行更新
代码部分
获取链接模板及输出贴吧列表
打开浏览器,按下F12,打开贴吧,搜索一个贴吧,这边以"希灵帝国"为例
打开后可以看到,该帖吧首页的地址是:https://tieba.baidu.com/f?ie=utf-8&kw=%E5%B8%8C%E7%81%B5%E5%B8%9D%E5%9B%BD&fr=search
通过浏览器的翻译,我们可以得知:希灵帝国被浏览器翻译成%E5%B8%8C%E7%81%B5%E5%B8%9D%E5%9B%BD,所以这串其实就是希灵帝国四个字的unicode显示,所以得出了贴吧名字在贴吧链接里占用的模块。
该贴吧第四页的地址是:https://tieba.baidu.com/f?kw=%E5%B8%8C%E7%81%B5%E5%B8%9D%E5%9B%BD&ie=utf-8&pn=150
重新点回第一页:https://tieba.baidu.com/f?kw=%E5%B8%8C%E7%81%B5%E5%B8%9D%E5%9B%BD&ie=utf-8&pn=0
点第二页:https://tieba.baidu.com/f?kw=%E5%B8%8C%E7%81%B5%E5%B8%9D%E5%9B%BD&ie=utf-8&pn=50
得出规律:https://tieba.baidu.com/f?kw=贴吧名字&ie=utf-8&pn=页码
并

本文介绍了如何使用Python爬虫抓取贴吧数据,筛选指定回复量以上的帖子,将URL导出为Excel表格,然后读取表格内容并生成Word文档。涉及的库包括requests、BeautifulSoup、pandas、docx等。首先获取贴吧链接模板,然后爬取指定页数的帖子数据,根据回复量筛选,最后将帖子内容保存为Word文档。
最低0.47元/天 解锁文章
1257

被折叠的 条评论
为什么被折叠?



