首页 > 其他分享 >B(爬取与分析网页数据)

B(爬取与分析网页数据)

时间:2024-09-26 16:36:42浏览次数:6  
标签:分析 uploaded pp39 matplotlib 爬取 file time 网页 find

题目:matplotlib库的网页已下载并保存于“matplotlib · PyPI.html”文件(utf-8格式)中,请爬取并显示第i个版本的信息,并显示文件名(*.whl)、文件大小、更新时间、适用版本。i由键盘输入。其中第1版本显示如包过下图:

(图片没有)!


对应脚本如下:

<div class="card file__card">
<a href="https://files.pythonhosted.org/packages/80/24/97c9bb03263d0812ebc17ad0608a4b9f2dda4d53ec21bd7534a932809f30/matplotlib-3.6.2-pp39-pypy39_pp73-win_amd64.whl">
matplotlib-3.6.2-pp39-pypy39_pp73-win_amd64.whl
</a>
(7.2 MB
<a href="#copy-hash-modal-f0c610ff-69c1-4f6d-85ae-806e07cfe734">view hashes</a>)
<p class="file__meta">
Uploaded <time data-controller="localized-time" data-localized-time-relative="true" data-localized-time-show-time="false" datetime="2022-11-03T01:52:11+0000">
Nov 3, 2022
</time>
<code>pp39</code>
</p>
</div>


说明:第三方库BeautifulSoup已自动下载考试系统文件夹,不用安装。
运行后若输入:1
则结果输出:
matplotlib-3.6.2-pp39-pypy39_pp73-win_amd64.whl;7.2MB;UploadedNov3,2022 pp39;
运行后若输入:2
则结果输出:
matplotlib-3.6.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl;7.4MB;UploadedNov3,2022 pp39;


请在"""【"""和"""】"""之间的空白处填入适当语句或式子。
"""源程序"""

#coding=gbk
from bs4 import BeautifulSoup
url = 'matplotlib · PyPI.html'

 


"""【"""

 

"""】"""
"""End"""

答案示例(仅供参考):

import re # 引入正则表达式库
from datetime import datetime
with open(url, 'r', encoding='utf-8') as file:
soup = BeautifulSoup(file, 'html.parser')

i = int(input())

cards = soup.find_all('div', class_='card file__card')
if i > len(cards) or i < 1:
print("输入的索引超出范围")
else:
card = cards[i]
a_tag = card.find('a')
file_name = a_tag.text.strip()
file_size = a_tag.next_sibling.strip()
file_size = file_size[1:].strip().replace(" ", "")

file_meta = card.find('p', class_='file__meta')
uploaded_time = file_meta.find('time')['datetime']
version = file_meta.find('code').text.strip()
try:
dt = datetime.strptime(uploaded_time, "%Y-%m-%dT%H:%M:%S%z")
uploaded_time = f"{dt:%b}{dt.day},{dt.year}"
except ValueError as e:
print(f"时间格式错误: {e}")
uploaded_time = "未知时间"
print(f"{file_name};{file_size};Uploaded{uploaded_time} {version};")

 

标签:分析,uploaded,pp39,matplotlib,爬取,file,time,网页,find
From: https://www.cnblogs.com/Cyruswong/p/18433656

相关文章

  • java+vue计算机毕设报考意向分析系统【源码+程序+论文+开题】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着教育改革的深入和高校招生规模的不断扩大,学生报考高校及专业的选择日益成为影响个人未来发展的关键环节。然而,面对众多高校、复杂的专业设置以及......
  • 2024年模式识别与图像分析国际学术会议(PRIA 2024) 2024 International Conference on P
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus2024年10月18-20日南京三、大会介绍2024年模式识别与图像分析国际学术会......
  • 巧用时间换空间:解读 ArcGraph 如何灵活应对有限内存下的图分析
    导读:ArcGraph是一款云原生架构、存查分析一体化的分布式图数据库。本文将详细解读ArcGraph如何灵活应对有限内存下的图分析。01引言在图分析技术广泛应用的当下,学术界和各大图数据库厂商热衷于提升图分析技术的高性能指标。然而,追求高性能计算的过程中,常采用“以空间换时间......
  • 抖音开放平台API接口如何开发抖音相关接口数据采集数据分析 【附实例】
    抖音开放平台提供了多种接口,包括授权登录、用户信息、视频管理、评论互动、消息通知、数据分析等。以下是开发抖音接口的一些步骤:注册开发者账号:在抖音开放平台上注册开发者账号,获取开发者身份认证。创建应用:登录开放平台后,创建自己的应用,获取应用的AppID和AppSecret。授权登录:......
  • golang性能测试框架k6源码分析
    Golang性能测试框架k6是一个新兴的性能测试工具,其特点在于使用JavaScript作为测试脚本语言,并且基于Golang的强大性能进行构建。1.框架基础k6的启动框架使用了Golang的CLI标准框架cobra。cobra是一个用于构建CLI应用程序的库,它提供了丰富的命令解析和参数处理功能。在k6中,getRunCm......
  • SPSS26统计分析笔记——7 回归分析
    1回归方程        回归方程一般表达式:y=f(x......
  • VS Code 的SSH连接不成功问题分析与解决
    问题描述:多次输入密码,一直连接不上解决方法;打开远程服务器中~/.vscode-server/bin/xxx文件夹,此时可以看到一个名为vscode-server.tar.gz,截图如下:上面的37开头的文件夹称为CommitId,现在利用CommitID下载远程连接需要的文件。使用这个链接:https://update.code.visualstudio.......
  • 基于python数据挖掘技术的线上招聘信息数据可视化分析系统 q3122-- Scrapy爬虫
    目录项目介绍实现功能截图技术栈Scrapy爬虫框架关键技术和使用的工具环境等的说明解决的思路开发流程爬虫核心代码展示系统设计论文书写大纲详细视频演示源码获取项目介绍基于数据挖掘技术的线上招聘信息分析系统旨在通过应用先进的数据分析方法,为求职者和招聘者提......
  • 骨传导耳机什么牌子好?硬核测评分析五大王牌骨传导耳机!
    随着科技的发展和人们生活方式的变化,骨传导耳机逐渐成为市场上的一大热门产品。它独特的传声方式不仅为运动爱好者提供了安全、便捷的音乐体验,也让越来越多的消费者开始关注这一新兴品类。然而,面对市面上琳琅满目的骨传导耳机品牌和型号,很多消费者在购买时往往感到迷茫,甚至在使......
  • Apache DolphinScheduler-1.3.9源码分析(一)
    引言随着大数据的发展,任务调度系统成为了数据处理和管理中至关重要的部分。ApacheDolphinScheduler是一款优秀的开源分布式工作流调度平台,在大数据场景中得到广泛应用。在本文中,我们将对ApacheDolphinScheduler1.3.9版本的源码进行深入分析,介绍Master启动以及调度流程......