这段Python代码主要实现从指定网站批量抓取新闻数据,并对数据进行处理和可视化的功能,具体步骤如下:
1. 导入模块
导入了多进程处理、操作系统交互、HTTP请求、JSON处理、数据可视化和计数器等多个模块,用于后续的各项操作。
2. 创建目录
检查当前目录下是否存在名为 xx 的文件夹,如果不存在,则创建该文件夹,用于存储后续抓取的JSON数据文件。
3. 设置请求头和基础URL
设置了模拟浏览器的User-Agent请求头,防止被网站识别为爬虫;定义了基础URL,用于构建请求的具体URL。
4. 定义抓取函数
run 函数接收页码作为参数,构建完整的请求URL,向网站发送GET请求。若请求成功(状态码为200),则将返回的数据保存为JSON文件;若请求失败,打印错误信息。
5. 多进程抓取
在主程序入口( if __name__ == '__main__': )中,使用多进程池( Pool )并发地调用 run 函数,抓取前50页的数据。
6. 数据提取
遍历存储JSON文件的文件夹,读取每个JSON文件,提取其中的新闻标题和作者信息,将其存储到 results 列表中。
7. 保存提取结果
将提取的标题和作者信息保存到一个文本文件中。
8. 数据可视化
统计每个作者的文章数量,使用 seaborn 和 matplotlib 库绘制柱状图,展示每位作者的文章数量,并保存为图片,同时显示图片 。
点击空白处退出提示















评论