当前位置: 首页 > article >正文

使用python爬取某新闻网并进行数据分析

引言

在这个信息爆炸的时代,获取并分析特定网站上的信息变得越来越重要。本文将通过一个实例来展示如何使用Python编写一个简单的网络爬虫,抓取某新闻网上的新闻信息,并对这些数据进行基本的统计分析。我们将使用urlliblxmlpandas以及matplotlib等库来完成这项任务。
目标网站

在这里插入图片描述

环境准备

在开始之前,请确保你的环境中已安装了以下Python库:

  • urllib
  • lxml
  • pandas
  • matplotlib
  • fake_useragent

可以通过pip命令来安装这些库,例如:

pip install lxml pandas matplotlib fake_useragent

代码详解

1. 导入必要的库

首先,我们需要导入所有需要用到的Python库。这里包括了用于网络请求的urllib,解析HTML的lxml,处理数据的pandas,以及用于绘制图表的matplotlib

import urllib.request
from urllib.parse import urlparse, urljoin
import pandas as pd
from fake_useragent import UserAgent
from lxml import etree
import re
import time
from datetime import datetime, timedelta
from matplotlib import pyplot as plt

2. 定义基础URL及标签页面

接下来定义我们要爬取的基础URL以及各个新闻标签对应的初始页面URL。这将帮助我们构建完整的新闻链接。

# 基础URL
base_url = 'https://news.tju.edu.cn'

# 各个标签的初始URL
tags = {
   
    '全部': 'https://news.tju.edu.cn/xnxw1/qb/1146.htm',
    '科研': 'https://news.tju.edu.cn/xnxw1/ky/124.htm',
    '教学': 'https://news.tju.edu.cn/xnxw1/jx/97.htm',
    '交流': 'https://news.tju.edu.cn/xnxw1/jl/165.htm',
    '校友': 'https://news.tju.edu.cn/xnxw1/xy/36.htm',
    '管理': 'https://news.tju.edu.cn/xnxw1/gl/292.htm',
    '活动': 'https://news.tju.edu.cn/xnxw1/hd/401.htm',
    '观点': 'https://news.tju.edu.cn/xnxw1/gd/15.htm',
    '人物': 'https://news.tju.edu.cn/xnxw1/rw/10.htm',
    '文化': 'https://news.tju.edu.cn/xnxw1/wh/3.htm'
}

3. 初始化存储列表

创建一个空列表all_news_data,用于存储所有抓取到的新闻数据。

# 存储所有新闻数据的列表
all_news_data = []

http://www.kler.cn/a/380345.html

相关文章:

  • Template Method(模板方法)
  • Java 实现接口幂等的九种方法:确保系统稳定性与数据一致性
  • C++ 详细讲解 洛谷P1428 小鱼比可爱
  • Elasticsearch 实战应用详解!
  • 「C/C++」C/C++标准库 之 #include<cstdlib> 通用工具函数库
  • 哈尔滨二级等保Oracle数据库默认用户名与密码解析
  • 【论文阅读笔记】Wavelet Convolutions for Large Receptive Fields
  • 论文阅读(一种基于球面投影和特征提取的岩石点云快速配准算法)
  • [ DOS 命令基础 4 ] DOS 命令命令详解-端口进程相关命令
  • 【ROS2】hbm_img_msgs/msg/HbmMsg1080P 转 opencv cv::Mat
  • 江协科技STM32学习- P32 MPU6050
  • PHP不良事件上报系统源码,医院安全不良事件管理系统,基于 vue2+element+ laravel框架开发
  • 前端页面整屏滚动fullpage.js简单使用
  • 儿童安全座椅行业全面深入分析
  • 【Linux】将 bin 目录添加到环境变量 LD_LIBRARY_PATH
  • 【【简单systyem verilog 语言学习使用二--- 新adder加法器 】】
  • 【Rust中的错误处理】
  • (十二)JavaWeb后端开发——MySQL数据库
  • SpringBoot框架:新闻稿件管理技术进阶
  • Redis数据类型——针对实习面试
  • 绿宝石二十载:如何打破国外在高端电容市场的垄断?
  • China Geodetic Coordinate System 2000 PRJ文件解析
  • java重要知识点 JVM基本结构
  • ACM模式输入输出处理(JS版)
  • ONLYOFFICE 文档8.2更新评测:PDF 协作编辑、性能优化及更多新功能体验
  • ChatGPT中的RAG;大模型微调;通过正确的提问和回答数据进行问答系统的微调;