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

python爬虫笔记(一)

文章目录

    • html
      • 基础
        • 标签和下划线
        • 无序列表和有序列表
        • 表格
          • 加边框
      • html的属性
        • a标签(网站)
          • target属性
          • 换行线和水平分割线
        • 图片
          • 设置宽高width,height
      • html区块——块元素与行内元素
        • 块元素与行内元素
        • 块元素举例
          • 行内元素举例
      • 表单
        • from标签
          • type属性
          • placeholder属性
          • value属性
          • span标签的应用
          • radio选项
        • label标签
          • for属性
          • checkbox多选
          • submit属性
        • from标签
        • css
        • css三种导入方式
        • 选择器
        • 元素选择器、类选择器、ID选择器、通用选择器
        • 子元素选择器(嵌套),后代选择器
        • 后代选择器示例
        • 伪类选择器
      • css属性

在这里插入图片描述

在这里插入图片描述

import requests
response = requests.get( "http://books.toscrape.com/")
if response.ok:print(response.text)
else:print("请求失败")

有User-Agent

import requests
headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.62"
}
response = requests.get("https://movie.douban.com/top250",headers=headers)
print(response.status_code)
from bs4 import BeautifulSoup
import requests
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/116.0.0.0"
}
response = requests.get("http://books.toscrape.com/", headers=headers)
content = response.text
soup = BeautifulSoup(content,"html.parser")
all_prices = soup.find_all("p",attrs={"class": "price_color"})
# for price in all_prices:
#     print(price)
for price in all_prices:# print(price.text)# print(price)# print(price.string)print(price.string[2:])
from bs4 import BeautifulSoup
import requests
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/116.0.0.0"
}
for start_num in range(0,250,25):response = requests.get(f"https://movie.douban.com/top250?start={start_num}", headers=headers)html = response.textsoup = BeautifulSoup(html,"html.parser")all_titles = soup.findAll( "span",attrs={"class":"title"})for title in all_titles:title_string=title.stringif "/" not in title_string:print(title_string)

在这里插入图片描述

html

基础

标签和下划线

在这里插入图片描述
在这里插入图片描述

无序列表和有序列表

在这里插入图片描述
在这里插入图片描述

表格

在这里插入图片描述
在这里插入图片描述

加边框

在这里插入图片描述

html的属性

在这里插入图片描述

a标签(网站)

在这里插入图片描述
在这里插入图片描述

target属性

在这里插入图片描述

在这里插入图片描述
1.self链接在当前窗口打开
2.blank链接在新窗口打开
3.parent链接在父窗口打开
4.top链接在顶层窗口打开

换行线和水平分割线

在这里插入图片描述
在这里插入图片描述
换行是br,水平分割线是hr

图片

在这里插入图片描述

设置宽高width,height

html区块——块元素与行内元素

块元素与行内元素

在这里插入图片描述

在这里插入图片描述

块元素举例

用于结构或布局
-------------------------------------------------------------a
在这里插入图片描述
在这里插入图片描述

------------------------------------------------------------------------a

行内元素举例

用于内联样式化文本,给文本的一部分用样式或标记
在这里插入图片描述

在这里插入图片描述

表单

from标签
type属性

input标签,type属性规定了input的类型

在这里插入图片描述

w3cschool.cn/html5/html5-input.html

可以在网站输入内容
在这里插入图片描述
在这里插入图片描述

placeholder属性

在这里插入图片描述
在这里插入图片描述

value属性

自动填写“请输入内容”
在这里插入图片描述
在这里插入图片描述

span标签的应用

在这里插入图片描述
在这里插入图片描述

radio选项

在这里插入图片描述
在这里插入图片描述
加入gender只能选一个,不加可以全部勾选
在这里插入图片描述

在这里插入图片描述

label标签
for属性

for一般与id绑定

password属性
在这里插入图片描述
在这里插入图片描述

checkbox多选

在这里插入图片描述
在这里插入图片描述

submit属性

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=html, initial-scale=1.0"><title>html练习</title>
</head>
<body><form><label>用户名:</label><input type="text" placeholder="请输入用户名"><br><br><label for="pwd">密码:</label><input type="password" id="pwd" placeholder="请输入密码"><br><br><label>性别:</label><input type="radio" name="gender"><input type="radio" name="gender"><input type="radio" name="gender">其他<br><br><label>爱好:</label><input type="checkbox" name="hobby">唱歌<input type="checkbox" name="hobby">跳舞<input type="checkbox" name="hobby">RAP<input type="checkbox" name="hobby">篮球<br><br><input type="submit"></form><form action="#"></form>
</body>
</html>

#需要为服务器,即api

from标签

提交后具体数据存到哪里
就是from中action属性

css

在这里插入图片描述

<!DOCTYPE html>
<html>
<head><style>p {color: blue; /* 将所有 price_color 类的文本改为蓝色 */font-size: 16px;}</style>
</head>
<body><p>这是一个应用css样式的文本</p>  
</body>
</html>
css三种导入方式

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=html, initial-scale=1.0"><title>html练习</title><!-- <link rel="stylesheet" href="./style.css"  --><style>p {color: blue; /* 将所有 p 标签的文本改为蓝色 */font-size: 16px;}h2 {color: green;}</style>
</head>
<body><p>这是一个应用css样式的文本</p>  <h1 style="color: red;">这是一个一级标题使用内联样式</h1><h2>这是一个二级标题,应用外部样式</h2><h3>这是一个三级标题,应用外部样式</h3>
</body>
</html>
选择器

在这里插入图片描述
在这里插入图片描述

元素选择器、类选择器、ID选择器、通用选择器
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>h2{color:aqua;}  /* 元素选择器 */.highlight{background-color: yellow;}#header{font-size: 55px;}        /* id选择器 */*{font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;}/* 通用选择器 */</style> 
</head> 
<body><h1>不同类型的css选择器</h1><h2>这是一个元素选择器示例</h2><h3 class="highlight">这是一个类选择器示例</h3> <h3>这是另一个类选择器示例</h3><h4 id="header">这是一个id选择器示例 </h4></body>
</html>

在这里插入图片描述

子元素选择器(嵌套),后代选择器
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.father>.son{color:yellowgreen;}/* 子元素选择器 */</style> 
</head> 
<body>

在这里插入图片描述

后代选择器示例
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#header{font-size: 55px;}        /* id选择器 */.father>.son{color:yellowgreen;}/* 子元素选择器 */</style> 
</head> 
<body><div class="father"><p class="son">这是一个子元素选择器示例</p>
</div>
<div><p class="grandson">这是一个后代选择器示例</p>
</div>
</body>
</html>

在这里插入图片描述

后代包含子代,子代不包含孙子代,之所以后代选择器每变色是英文grandson不是子代

伪类选择器
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#header{font-size: 55px;}        /* id选择器 */#element:hover{background-color: purple;}</style> 
</head> 
<body><h3 id="element">这是一个伪类选择器示例</h3></body>
</html>

在这里插入图片描述
鼠标悬浮背景颜色会变

css属性

background-color
font-size
font-family
font-weight
在这里插入图片描述
菜鸟教程网站

runoob.com/cssref/css-reference.html#font

在这里插入图片描述
在这里插入图片描述

相关文章:

python爬虫笔记(一)

文章目录 html基础标签和下划线无序列表和有序列表表格加边框 html的属性a标签&#xff08;网站&#xff09;target属性换行线和水平分割线 图片设置宽高width&#xff0c;height html区块——块元素与行内元素块元素与行内元素块元素举例行内元素举例 表单from标签type属性pla…...

docker后台运行,便于后期用命令行进入它的终端

在 docker compose up --build -d 命令中&#xff0c;​**-d​&#xff08;或 --detach&#xff09;参数的作用是让容器以后台模式&#xff08;detached mode&#xff09;​**运行。以下是详细解释&#xff1a; ​**-d 参数的作用** ​后台运行容器&#xff1a; 默认情况下&a…...

剑指 Offer II 087. 复原 IP

comments: true edit_url: https://github.com/doocs/leetcode/edit/main/lcof2/%E5%89%91%E6%8C%87%20Offer%20II%20087.%20%E5%A4%8D%E5%8E%9F%20IP/README.md 剑指 Offer II 087. 复原 IP 题目描述 给定一个只包含数字的字符串 s &#xff0c;用以表示一个 IP 地址&#xf…...

DC-6靶机详解

一、主机发现 arp-scan -l靶机ip为192.168.55.159 二、端口扫描、目录枚举、指纹识别、 2.1端口扫描 nmap 192.168.55.159发现没有开放特殊端口 看来信息收集的重点要放在网页中了 2.2目录枚举 dirb http://192.168.55.1592.3指纹识别 nmap 192.168.55.159 -sV -sC -O …...

Java构造方法详解:从入门到实战

目录 一、什么是构造方法&#xff1f; 二、构造方法的作用 三、构造方法分类与使用 1. 默认构造方法 2. 有参构造方法 3. 构造方法重载 四、注意事项&#xff08;避坑指南&#xff09; 五、经典面试题解析 六、实战应用场景 七、总结 一、什么是构造方法&#xff1f; …...

STM32-SPI通信外设

目录 一&#xff1a;SPI外设简介 SPI框图​编辑 SPI逻辑 ​编辑 主模式全双工连续传输 ​编辑 非连续传输 二&#xff1a;硬件SPI读写W25Q64 1.接线&#xff1a; 2. 代码 SPI外设的初始化 生成时序 一&#xff1a;SPI外设简介 STM32内部集成了硬件SPI收发电路&#…...

远程控制中的云电脑是什么意思?1分钟学会用

很多常用我们ToDesk远程控制的朋友们或许会注意到无论是在PC端还是移动端中都出现有【云电脑】【来云电脑爽玩-新用户免费1小时】这些词句等信息。那么这究竟是代表什么意思呐&#xff1f;云电脑是什么又怎么用呐&#xff1f;为什么要增加云电脑&#xff1f;以下小编就为大家科…...

【go】Go 语言中 errors.Is 和 errors.As 的区别

Go 语言中 errors.Is 和 errors.As 的区别 核心区别概述 errors.Is 和 errors.As 是 Go 1.13 引入的错误处理函数&#xff0c;它们有着不同的用途&#xff1a; errors.Is: 判断错误链中是否包含特定的错误值&#xff08;错误相等性检查&#xff09;errors.As: 尝试将错误转换…...

网络爬虫【简介】

我叫补三补四&#xff0c;很高兴见到大家&#xff0c;欢迎一起学习交流和进步 今天来讲一讲视图 一、网络爬虫的定义 网络爬虫&#xff08;Web Crawler&#xff09;&#xff0c;又称为网络蜘蛛、网络机器人等&#xff0c;是一种按照一定规则自动抓取互联网信息的程序或脚本。它…...

JPA动态查询自定义排序规则

方法1&#xff1a;使用 CASE WHEN 语句排序 // 自定义排序逻辑 // 定义“离线”排在前&#xff0c;“在线”排在后 Expression<Object> caseExpression cb.selectCase().when(cb.equal(root.get("status"), "离线"), 0).when(cb.equal(root.get(…...

卫语句优化多层if else嵌套

一、卫语句的介绍 卫语句是一种编程实践&#xff0c;用于在函数或方法的开头快速处理不符合条件的情况&#xff0c;从而避免深层次的嵌套结构。它的核心思想是尽早返回&#xff0c;减少嵌套&#xff0c;使代码更加清晰易读。 二、卫语句的作用 提高可读性&#xff1a;卫语句将…...

2024华东师范大学计算机复试上机真题

2024华东师范大学计算机复试机试真题 2023华东师范大学计算机复试机试真题 2022华东师范大学计算机复试机试真题 2024华东师范大学计算机复试上机真题 2023华东师范大学计算机复试上机真题 2022华东师范大学计算机复试上机真题 在线评测&#xff1a;传动门&#xff1a;pgcode…...

3.15刷题

P6337 [COCI 2007/2008 #2] CRNE - 洛谷 #include<bits/stdc.h> using namespace std; int main(){int n;cin>>n;//横加竖 最大。n/2,n/21if(n%20){cout<<(n/21)*(n/21);}else cout<<(n/22)*(n/21);return 0; }P6338 [COCI 2007/2008 #2] PRVA - 洛…...

14.使用各种读写包操作 Excel 文件:辅助模块

一 各种读写包 这些是 pandas 在底层使用的各种读写包。无须安装 pandas&#xff0c;直接使用这些读写包就能够读写 Excel 工作簿。可以尽可能地使用 pandas 来解决这类问题&#xff0c;只在 pandas 没有提供你所需要的功能时才用到读写包。 表中没有 xlwings &#xff0c;因为…...

设计心得——多态

一、设计上的多态 无论是在网上还是书籍上&#xff0c;还是自己的文章里都反复分析过多态的原理、应用和各种常见的情况。本篇重点从设计的角度来阐述一下多态&#xff0c;而不对多态的具体的用法进行说明。在前面的知识学习中可以知道&#xff0c;多态可以分为动多态和靜多态…...

【DeepSeek】本地部署DeepSeek的完整教程(Ollama+Docker+Open WebUI)

本地部署DeepSeek的完整教程 文章目录 本地部署DeepSeek的完整教程写在前面技术需求详细步骤一. 安装Ollama软件二. 安装DeepSeek-R1模型三. 安装Docker软件四. 配置Web UI界面问题解决1. 打开`docker desktop`时,一直显示`Docker Engine stopped`2. 用`Docker`拉取`Open WebU…...

Python数据分析之数据可视化

Python 数据分析重点知识点 本系列不同其他的知识点讲解&#xff0c;力求通过例子让新同学学习用法&#xff0c;帮助老同学快速回忆知识点 可视化系列&#xff1a; Python基础数据分析工具数据处理与分析数据可视化机器学习基础 四、数据可视化 图表类型与选择 根据数据特…...

1、操作系统引论

一、操作系统 会使用linux系统 建议大家先学会linux的基础指令&#xff0c;可以看菜鸟教程网站进行学习。 1、各种定义 操作系统定义 管理计算机的 硬件 和软件资源&#xff0c; 能对各类作业进行调度&#xff0c;方便用户使用计算机的程序集合。操作系统运行在内核态&#xf…...

DeepSeek 本地化新篇章:Ollama 兼容 OpenAI API 的深度解析与部署实践

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 随着大语言模型(LLM)的快速发展,开发者对本地化部署和 API 兼容性的需求日益增加。Ollama 作为一个轻量级开源框架,通过兼容 OpenAI AP…...

【PTA题目解答】7-4 数气球 (20分)

1.题目 天空上有n个气球&#xff0c;第i个气球的颜色为colori​&#xff08;为全由小写字母组成的字符串&#xff09; 请你数出每种颜色的气球的数量&#xff0c;并按照颜色出现的先后顺序进行排序输出。 输入格式: 测试数据有T组(1≤T≤100)。 对于每组样例&#xff0c;第一…...

Swift 中 associatedtype 的用法详解

目录 前言 1.什么是associatedtype 2.associatedtype 的作用 1.让协议支持泛型 2.让协议支持不同的数据类型 3.结合 where 关键字限制类型 4.什么时候使用 associatedtype 5.总结 前言 在 Swift 语言中&#xff0c;泛型&#xff08;Generics&#xff09;是一个非常强大…...

java泛型通配符?及上下界(extends,super)保证安全性、灵活性、可读性

在 Java 中&#xff0c;泛型通配符&#xff08;?&#xff09;用于表示未知类型&#xff0c;通常用于增强泛型的灵活性。通配符可以与上下限结合使用&#xff0c;以限制泛型的范围。以下是通配符及上下限的使用示例&#xff1a; 1. 无界通配符 (?) 无界通配符表示可以接受任意…...

HarmonyOS NEXT - 网络请求问题(http)

HTTP&#xff08;HyperText Transfer Protocal&#xff0c;超文本传输协议&#xff09;是一种用于传输超媒体文档&#xff08;如HTML&#xff09;的应用层协议&#xff0c;它是客户端和服务器之间通信的基础&#xff1b;无论是获取数据、提交表单、上传文件&#xff0c;HTTP都扮…...

告别旧版本,功能全面升级!

小伙伴们&#xff0c;今天来给大家唠唠一款超经典的软件——格式工厂&#xff01;相信很多人都不陌生吧&#xff1f;它可是早期超多人用的视频格式转换工具呢&#xff01;但随着软件行业的发展&#xff0c;它慢慢被其他工具代替了&#xff0c;像万兴、小丸、AME这些新宠儿一出现…...

WSL2 Ubuntu安装GCC不同版本

WSL2 Ubuntu安装GCC不同版本 介绍安装gcc 7.1方法 1&#xff1a;通过源码编译安装 GCC 7.1步骤 1&#xff1a;安装编译依赖步骤 2&#xff1a;下载 GCC 7.1 源码步骤 3&#xff1a;配置和编译步骤 4&#xff1a;配置环境变量步骤 5&#xff1a;验证安装 方法 2&#xff1a;通过…...

双目视觉小记

双目视觉及其数学原理 1. 双目视觉概述 双目视觉&#xff08;Stereo Vision&#xff09;是一种模仿人眼视觉系统的计算机视觉技术&#xff0c;利用两台摄像机从不同角度拍摄同一场景&#xff0c;通过图像处理和三维重建来获取场景的深度信息。双目视觉广泛应用于机器人、自动…...

Obsidian Copilot:打造你的专属 AI 笔记助手

Obsidian Copilot作为一款非常受欢迎的Obsidian插件&#xff0c;不仅极大地提升了用户的笔记管理和信息检索效率&#xff0c;还通过其多样化的AI功能为用户带来了前所未有的便捷体验。本文将详细介绍Obsidian Copilot的核心特点、使用方法及个人体验分享。 核心特点 Obsidian…...

VPC4-通达oa-docker逃逸-shiro反序列化-hash传递-CrackMapExec喷射-历史ptt攻击-进程注入

由于本人是菜鸡&#xff0c;不会免杀&#xff0c;所有免杀的部分就直接跳过了 &#xff08;hhh) 靶场地址&#xff1a; 链接: https://pan.baidu.com/s/1Fh1Zg79n1yjCPe6rrQ2apA 提取码: qiag 第一台ubuntu(docker逃逸&#xff0c;shiro反序列化&#xff09; fscan扫到一…...

稳定运行的以Oracle数据库为数据源和目标的ETL性能变差时提高性能方法和步骤

要提高以 Oracle 为数据源和目标的ETL性能&#xff0c;需要综合考虑数据库性能优化、ETL工具配置、查询优化、并行处理和资源管理等多个方面。优化过程中要根据具体的ETL场景和工具来选择适合的方案&#xff0c;同时建议进行逐步调优&#xff0c;测试不同方案的效果&#xff0c…...

C++类与对象——拷贝构造与运算符重载

拷贝构造函数和赋值运算符重载就是C类默认六个函数之二。 拷贝构造函数&#xff1a; 如果⼀个构造函数的第⼀个参数是自身类类型的引用&#xff0c;且任何额外的参数都有默认值&#xff0c;则此构造函数 也叫做拷贝构造函数&#xff0c;也就是说拷贝构造是⼀个特殊的构造函数…...