第6章 6.4.1 案例一:爬取亚洲各地区的实时时间(MATLAB入门课程)

2024-04-14 11:04

本文主要是介绍第6章 6.4.1 案例一:爬取亚洲各地区的实时时间(MATLAB入门课程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​

MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili


本案例将引导大家爬取亚洲各地区的实时时间。我们将从下面这个网站中获取数据:现在亚洲时间_亚洲时间表_亚洲时间与北京时间_亚洲时区天气网时差频道(time.tianqi.com)为您提供亚洲时间表,可进行亚洲时间在线查询与换算和亚洲时间与北京时间对比,更有按亚洲时区划分的亚洲城市时间查询。icon-default.png?t=N7T8https://time.tianqi.com/asia_shijian

首先,请大家在自己的电脑上打开浏览器,并输入上述网址访问该网站。网站打开后,我们会看到亚洲各个地区的实时时间。

接下来,为了更好地帮助大家理解爬虫的流程,我们需要查看网页的源代码。这可以通过在浏览器的当前网站中点击鼠标右键,然后选择“查看网页源代码”来实现(请注意,本书示例使用的是谷歌Chrome浏览器,不同的浏览器可能在功能名称上略有差异)。

当你打开网页源代码后,会看到一大堆由HTML标签组成的代码。这些代码定义了网页的结构和内容。我们的目标是从中找到与我们需要的实时时间数据相关的部分。

一种有效的方法是在源代码中搜索我们想要提取的数据的关键词(快捷键Ctrl+F),比如“阿联酋”。这样就能快速定位到我们所需的数据在源码中的位置。

接下来,我们可以将整个网页源代码视为一个文本,并从这个文本中提取出我们感兴趣的数据,即各地区的名称和对应的实时时间。提取数据的方法有多种,既可以使用之前学过的文本处理函数,也可以使用本章介绍的正则表达式。通常情况下,网页源码中的数据在结构上具有一定的规律性,这时使用正则表达式进行提取通常会更加高效和方便。

在之前未掌握爬虫技术时,我们需要手动查看网页源代码,将其复制粘贴到文本文件中,或者将整个网页保存为HTML文件,然后再使用fileread函数将源码读取到MATLAB中。这样的操作繁琐且耗时,且对于本题而言爬取的时间也失去了实时性。

然而,现在我们将利用MATLAB的webread函数,直接获取网页的源代码。这一自动化的过程不仅省去了手动保存的繁琐步骤,更大大提高了数据获取的效率。

webread函数是MATLAB中用于获取网页内容的函数。在使用之前,我们可以通过weboptions函数来明确指出网页的字符编码,这样能避免在某些网站中可能出现的字符乱码问题。接下来,我们将展示如何使用这两个函数来获取指定网址的网页源代码。

有同学可能会有疑惑,为什么要指定这个网页的文本编码为utf-8而不是gbk。这里告诉大家一个小技巧:大家可以在网页源码中搜索charset这个关键词,通常会找到类似下面的代码(注意:这个技巧适用于绝大多数的网站): 


  点击下方的CSDN专栏阅读下一篇文章:

MATLAB入门课程专栏

这篇关于第6章 6.4.1 案例一:爬取亚洲各地区的实时时间(MATLAB入门课程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/902841

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题:

客户案例:安全海外中继助力知名家电企业化解海外通邮困境

1、客户背景 广东格兰仕集团有限公司(以下简称“格兰仕”),成立于1978年,是中国家电行业的领军企业之一。作为全球最大的微波炉生产基地,格兰仕拥有多项国际领先的家电制造技术,连续多年位列中国家电出口前列。格兰仕不仅注重业务的全球拓展,更重视业务流程的高效与顺畅,以确保在国际舞台上的竞争力。 2、需求痛点 随着格兰仕全球化战略的深入实施,其海外业务快速增长,电子邮件成为了关键的沟通工具。

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多