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

快速搭建网站视频教程江门小程序商城开发

快速搭建网站视频教程,江门小程序商城开发,昆明网站建设网站建设,韩国购物网站模板一、基本概念 动态网页是指网页内容可以根据用户的操作或者预设条件而实时发生变化的网页。 特点: 用户交互:动态网页能够根据用户的请求而生成不同的内容。内容动态生成:数据来自数据库、API或用户输入。客户端动态渲染:浏览器…

一、基本概念

动态网页是指网页内容可以根据用户的操作或者预设条件而实时发生变化的网页。

特点

  • 用户交互:动态网页能够根据用户的请求而生成不同的内容。
  • 内容动态生成:数据来自数据库、API或用户输入。
  • 客户端动态渲染:浏览器通过JavaScript/AJAX动态加载内容(如滚动加载更多商品)
  • 服务器端处理:动态网页通常需要服务器端脚本来处理用户的请求。脚本语言通常是PHP、java、Python、ruby等

二、网页判别

  • 检查方法
  1. 右键查看网页源代码(ctrl+u),搜索关键数据(ctrl+f),如果源代码中没有目标数据,说明是动态加载.

上面的图片明显看得出来,在网页源代码中并没有找到目标数据。

      2、分析网络请求(F12 → Network),观察XHR/Fetch请求,看数据是否通过API返回(通常是JSON格式)。

这里就做一下静态网页和动态网页的对比

静态网页动态网页
  • 动态网页特征

                1、 页面内容逐步加载

                2、滚动到页面底部时加载更多内容

                3、数据通过异步请求获取

三、爬虫步骤

  1. 我使用开发工具直接调用API

点击预览可看到,网页上的一些数据

2、url太长了,我们可以查询字符型串参数来定义请求参数,url中?号后面可以不要

3、在标头中找到User-Agent,来模拟浏览器

代码:

# 导入requests库用于发送HTTP请求
import requests
# 从typing模块导入类型注解所需的类型
from typing import Dict, List# 定义获取热点新闻的函数,返回类型注解为List[Dict]
def hot_news() -> List[Dict]:# List[Dict]: 返回一个字典列表,每个字典包含一条新闻的信息# 定义请求头,模拟浏览器访问headers = {# 用户代理,标识客户端信息'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36 Edg/134.0.0.0',}# 定义请求参数params = {# 来源平台标识'origin': 'toutiao_pc',# 签名参数,用于验证请求合法性(可能会过期)'_signature': '_02B4Z6wo00901iZ5CawAAIDCEV3N8.rNWGomXQ0AAO6JwLZsIueh1TRpco1.6.JGKOj3uc9xHlCRxuw.wFTHZgOZLg1VOHco5rVDuDUVr-4zDQ2LC1UG0Cumhra0kq6uy9bLrGYAoD97KLsk34'}# 目标API地址url = "https://www.toutiao.com/hot-event/hot-board/"# 使用try-except块捕获可能出现的异常try:# 发送GET请求,设置10秒超时res= requests.get(url, params=params, headers=headers, timeout=10)# 如果响应状态码不是200,抛出HTTPError异常res.raise_for_status()# 将响应内容解析为JSON格式data = res.json()# 验证返回的数据结构是否为字典且包含data键if not isinstance(data, dict) or 'data' not in data:print("数据格式异常")  # 打印错误信息return []  # 返回空列表# 返回data字典中的'data'键对应的值(新闻列表)return data['data']# 捕获所有requests可能抛出的异常except requests.exceptions.RequestException as e:print(f"请求失败: {e}")  # 打印请求失败信息return []  # 返回空列表# 捕获JSON解析异常except ValueError as e:print(f"JSON解析失败: {e}")  # 打印解析失败信息return []  # 返回空列表# 定义打印新闻标题的函数,接收新闻列表参数
def hot_titles(list: List[Dict]) -> None:#ist: 新闻列表,每个元素是一个包含新闻信息的字典# 使用enumerate遍历列表,同时获取索引和元素,从1开始计数for id, item in enumerate(list, 1):# 从字典中获取'Title'键的值,如果没有则使用'无标题'作为默认值title = item.get('Title', '空')# 格式化打印序号和标题print(f"{id}. {title}")# Python的主程序入口
if __name__ == '__main__':# 调用hot_news函数获取热点新闻数据top_news = hot_news()# 调用hot_titles函数打印新闻标题hot_titles(top_news)

效果:/*做敲代码的时候,我电脑没电了,再次开机的时候就重新找的一个,所以这个与我上面预览的数据不一样*/

四、拓展

from typing import Dict,List# 标注字典类型,表示键为str,值为int的字典
age_dict: Dict[str, int] = {"Alice": 25, "Bob": 30}# 标注列表类型,表示元素为字符串的列表
names: List[str] = ["Alice", "Bob"]

http://www.dtcms.com/a/476029.html

相关文章:

  • 响应试网站和移动端开发公司和物业公司签协议
  • 山东青岛网站建设seo优化东莞网站建设优化东莞
  • 数据表和网站建设的关系企业微信管理
  • 静态单页网站wordpress广州越秀区天气预报15天查询
  • wordpress 导航图片尺寸window优化大师
  • 做界面的网站广州官方宣布
  • 适合程序员做项目笔记的网站百度做网站骗人到哪里去投诉
  • 武威市凉州区建设局网站网站gzip压缩
  • 什么网站可以做高仿化妆品企业网站案例大全
  • 苏州做儿童场馆门票包票的网站建站网址平台
  • 怎样利用云盘做电影网站做音乐网站首页要求
  • 北海哪里做网站建设wordpress百度地图开发
  • 网站建设中 尽情期待龙南县建设局网站
  • 用自己的名字做网站域名可以专做福特配件吗外贸网站
  • 医疗网站整站优化思路wordpress 博客下载
  • 摄影作品哪里看合肥seo培训
  • 遂溪网站开发公司英文建站软件
  • php婚庆网站源码总部在深圳的互联网公司
  • 普陀酒店网站建设学做静态网站
  • 网站设计风格确认书青海省城乡建设厅网站
  • 创意礼品做的比较好的网站周口城乡建设局网站
  • 道滘镇做网站中国室内设计公司100强
  • 郑州旅游网站搭建企信网查询官网
  • 优秀甜品网站苏州广告公司招聘
  • 做淘客网站需要营业执照吗番禺低价网站建设
  • 官方网站做背景墙厂家旅游网站模板html免费下载
  • 高校二级网站建设要求网站如何进行优化
  • WordPress设置模块间距邢台做网站优化价格
  • 企业网站产品优化怎么做wordpress插件会员
  • 个人网站建设法律规定对网站建设的具体想法