Python 爬虫

一、创建项目

1.双击打开pycharm,点击新建项目
2.项目设置
	- 勾选[继承全局站点软件包]
	- 勾选[可用于所有项目]
	- 取消勾选[创建main.py欢迎脚本]
	- 点击创建
3.项目名称右键--新建--python文件
4.输入文件名--回车

二、编辑代码

# 导入请求模块
import requests
# 如果报错,需要先安装模块
# windows:cmd中执行:pip install requests
# Mac:       终端中执行:pip3 install requests


# 视频url
# url获取方式:
# 1.首先打开视频的网页,然后打开开发者工具
# 2.选中网络(Network)   选中媒体(Media)
# 3.点击上方刷新按钮,就能看见一条或者两条数据
# 4.点击这条数据,右侧出现“标头”,在“标头”的“常规”下面,找到“请求网址”即为url,复制过来
url = ''

# 使用requests的get获取网站的响应
res = requests.get(url)

# 打开一个空的视频,把得到res.content放进去,得到一个可以播放的视频
open('KSVideo.mp4','wb').write(res.content)

有的网站视频和音频是分开的,url也是分开的,需要分开抓取,获取视频、音频url方式如下

1.首先打开视频的网页,然后打开开发者工具
2.选中网络(Network) 点击全部(All)
3.点击上方刷新按钮,下方能看到很多条数据,点击数据上方的“大小”,使多条数据从大到小排列。点击最上面的(最大的那一条)右侧出现“标头”,在“标头”的“常规”下面,找到“请求网址”即为视频url。然后点击下面的几条找到音频的url。

在这里插入图片描述

# 导入请求库
import requests
# 视频URL
videourl = ''
# 构造伪装信息
# user-agent、referer、cookie在上面截图右侧【标头】下方获取,没有的值空着就行
headers = {'user-agent':'','referer':'','cookie':''}
# 带上伪装信息去请求
res = requests.get(videourl,headers=headers)
# 打开一个文件并且写入
open('video.mp4','wb').write(res.content)
# 音频url
audiourl = ''
# 构造伪装信息
# user-agent、referer、cookie在上面截图右侧【标头】下方获取,没有的值空着就行
headers1 = {'user-agent':'','referer':'','cookie':''}
# 带上伪装信息去请求
resaudio = requests.get(audiourl,headers=headers1)
# 打开一个文件并且写入
open('audio.mp3','wb').write(resaudio.content)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/944671.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

瑞芯微全新芯片平台RK3506优势详解,高集成低功耗,为工业而生 触觉智能测评

RK3506是瑞芯微Rockchip在2024年第四季度全新推出的Arm嵌入式芯片平台,三核Cortex-A7单核Cortex-M0多核异构设计,CPU频率达1.5Ghz, M0 MCU为200Mhz。 而RK3506芯片平台下的工业级芯片型号RK3506J,具备-40-85℃的工业宽温性能、发热量小&#…

HarmonyOS NEXT应用开发实战:一分钟写一个网络接口,JsonFormat插件推荐

在开发鸿蒙操作系统应用时,网络接口的实现往往是一个繁琐且重复的过程。为了提高开发效率,坚果派(nutpi.net)特别推出了一个非常实用的插件——JsonFormat。这款插件的主要功能是将JSON格式的数据直接转换为arkts的结构定义,让我们在编写接口…

Unity-Editor扩展显示文件夹大小修复版 FileCapacity.cs

实战中是这样的,大项目, 容易定位美术大资产 (原版的代码有问题,每次点运行都会卡顿,大项目20S) //但其实获整个项目内容,1G都没有,有够省的(10年前的中型项目,一直有出DLC) using System; using System.Collections; using System.Collections.Generic; using Sy…

LLM 应在时间序列和语言交叉领域的其他任务应用

Are Language Models Actually Useful for Time Series Forecasting? OneFitsAll、Time - LLM、LLaTA “Are Language Models Actually Useful for Time Series Forecasting?” 探讨了语言模型在时间序列预测中的应用效果。研究通过对三种基于 LLM 的预测方法进行消融实验,…

链路聚合

链路聚合 目的:备份链路以及提高链路带宽。 链路聚合技术(Eth-Trunk):将多个物理接口捆绑成一个逻辑接口,将N条物理链路逻辑上聚合为一条逻辑链路。 正常情况下,想要配置链路聚合 1、A设备通过多条链路连接…

IDEA设置作者信息 日期等

file -> setting 或 ctrl alt s找到如下 然后添加注释即可 可以直接编辑5处的文字,在 author 后放自己的名字即可 /*** author 你的名字* date ${DATE} ${TIME})*/当然 整体不止这些 ,看下面的描述中,还有很多其他选项 也可以 4 这…

Lumos学习王佩丰Excel第二十三讲:饼图美化与PPT图表

一、双坐标柱形图的补充知识 1、主次坐标设置 2、主次坐标柱形避让(通过增加两个系列,挤压使得两个柱形挨在一起) 增加两个系列 将一个系列设置成主坐标轴,另一个设成次坐标轴 调整系列位置 二、饼图美化 1、饼图美化常见设置 …

五、CentOS7/CentOS8安装APISIX(1)

目录 🌻🌻 一、 Apache APISIX介绍1.1 什么是Apache APISIX1.2 APISIX架构1.3 Apache APISIX 的技术优势1.4 APISIX‌应用场景 二、APISIX快速开始2.1 centos7/centos8安装APISIX 一、 Apache APISIX介绍 1.1 什么是Apache APISIX Apache APISIX 是一个…

SpringBoot(Ⅱ-2)——,SpringBoot版本控制,自动装配原理补充(源码),自动导包原理补充(源码),run方法

SpringBoot的版本控制是怎么做的 starter版本控制 SpringBoot的核心父依赖,下面导入的所有starter依赖都不需要指定版本,版本默认和spring-boot-starter-parent的parent版本一致; xxxstarter内部jar包依赖的版本管理,starter自…

数据结构-map和set

一,二叉搜索树 搜索树的特点: 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 。若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 。它的左右子树也分别为二叉搜索树 实现一棵搜索树(链式…

JavaScript甘特图 dhtmlx-gantt

背景 需求是在后台中,需要用甘特图去展示管理任务相关视图,并且不用依赖vue,兼容JavaScript原生开发。最终使用dhtmlx-gantt,一个半开源的库,基础功能免费,更多功能付费。 甘特图需求如图: 调…

SQLite本地数据库的简介和适用场景——集成SpringBoot的图文说明

前言:现在项目普遍使用的数据库都是MySQL,而有些项目实际上使用SQLite既足矣。在一些特定的项目中,要比MySQL更适用。 这一篇文章简单的介绍一下SQLite,对比MySQL的优缺点、以及适用的项目类型和集成SpringBoot。 1. SQLite 简介 …

python编译环境安装

一、安装pycharm 下载pycharm-professional-2022.2.5.exe, 根据网上找的破解安装方法进行安装,然后激活。 二、安装python 启动pycharm创建第一个工程时会要求选择python解释器版本,并自动安装。默认安装路径为: C:\Users\Administrator\…

仓颉编程笔记1:变量函数定义,常用关键字,实际编写示例

本文就在网页版上体验一下仓颉编程,就先不下载它的SDK了 基本围绕着实际摸索的编程规则来写的 也没心思多看它的文档,写的不太明确,至少我是看的一知半解的 文章提供测试代码讲解、测试效果图: 目录 仓颉编程在线体验网址&…

学习记录—正则表达式-基本语法

正则表达式简介-《菜鸟教程》 正则表达式是一种用于匹配和操作文本的强大工具,它是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。 正则表达式可以在文本中查找、替换、提取和验证特定的模式。 本期内容将介绍普通字符,特殊…

剑指Offer|LCR 014. 字符串的排列

LCR 014. 字符串的排列 给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的某个变位词。 换句话说,第一个字符串的排列之一是第二个字符串的 子串 。 示例 1: 输入: s1 "ab" s2 "eidbaooo" 输出: True 解…

# 光速上手 - JPA 原生 sql DTO 投影

前言 使用 JPA 时,我们一般通过 Entity 进行实体类映射,从数据库中查询出对象。然而,在实际开发中,有时需要自定义查询结果并将其直接映射到 DTO,而不是实体类。这种需求可以通过 JPA 原生 SQL 查询和 DTO 投影 来实现…

区块链安全常见的攻击合约和简单复现,附带详细分析——不安全调用漏洞 (Unsafe Call Vulnerability)【6】

区块链安全常见的攻击分析——不安全调用漏洞 Unsafe Call Vulnerability 区块链安全常见的攻击合约和简单复现,附带详细分析——不安全调用漏洞 (Unsafe Call Vulnerability)【6】1.1 漏洞合约1.2 漏洞分析1.3 攻击步骤分析1.4 攻击合约 区块链安全常见的攻击合约和…

MVCC实现原理以及解决脏读、不可重复读、幻读问题

MVCC实现原理以及解决脏读、不可重复读、幻读问题 MVCC是什么?有什么作用?MVCC的实现原理行隐藏的字段undo log日志版本链Read View MVCC在RC下避免脏读MVCC在RC造成不可重复读、丢失修改MVCC在RR下解决不可重复读问题RR下仍然存在幻读的问题 MVCC是什么…

FFmpeg 4.3 音视频-多路H265监控录放C++开发二十一.4,SDP协议分析

SDP在4566 中有详细描述。 SDP 全称是 Session Description Protocol, 翻译过来就是描述会话的协议。 主要用于两个会话实体之间的媒体协商。 什么叫会话呢,比如一次网络电话、一次电话会议、一次视频聊天,这些都可以称之为一次会话。 那为什…