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

Python入门第5篇(爬虫相关)

目录

爬虫初步说明

html相关基础

urllib之读取网页内容

http相关基础

requests之webapi调用


爬虫初步说明

爬虫,一句话来说,即模拟浏览器爬取一些内容,如自动下载音乐、电影、图片这种的

具体可能是直接访问网页进行解析,也可能是调用webapi直接获取数据,后者应该更多一些

html相关基础

html、js、css构成了html的三要素

urllib之读取网页内容

from urllib.request import urlopenurl='http://www.baidu.com'
con=urlopen(url)
cons=con.read()with open('./output.html','wb') as f:f.write(cons)print(cons)

这里是打开了百度首页,然后写入到一个本地html文件,注意这里使用wb方式写入(字节流)

注意:需要通过pip安装urllib 

http相关基础

三次握手

四次挥手

http方法:get、post

requests之webapi调用

import requests
import jsondef fanyi(inputStr):txt=input("请输入要翻译的内容:")url="https://fanyi.baidu.com/sug"data={"kw":txt}result=requests.post(url,data=data)# print(result.text)# printInfo(result.json())printInfo(result.json()["errno"])# printInfo(type(result.json()))print("翻译结果:")for i in range(len(result.json()["data"])):printInfo(str(i+1)+":"+result.json()["data"][i]["v"])if __name__=="__main__":fanyi("我的翻译机器人")pass

这里一百度翻译接口为例,通过输入待翻译内容,然后调用翻译接口,将接口返回结果进行解析,输出翻译结果

注意:需要通过pip安装requests 

主要用到的就是get、post

这里需要注意header、body这些参数,要根据实际网页请求的内容来,也可以先用postman、apipost测试

再一个需要注意的是,对于返回结果的解析,需要先清楚其类型,才可以更好的解析,如使用type()先打印下类型,就知道下一步要怎么解析了

相关文章:

Python入门第5篇(爬虫相关)

目录 爬虫初步说明 html相关基础 urllib之读取网页内容 http相关基础 requests之webapi调用 爬虫初步说明 爬虫,一句话来说,即模拟浏览器爬取一些内容,如自动下载音乐、电影、图片这种的 具体可能是直接访问网页进行解析,也…...

单元测试二(实验)-云计算2023.12-云南农业大学

1、实践系列课《深入浅出Docker应用》 https://developeraliyun.com/adc/scenarioSeries/713c370e605e4f1fa7be903b80a53556?spma2c6h.27088027.devcloud-scenarioSeriesList.13.5bb75b8aZHOM2w 容器镜像的制作实验要求 创建Dockerfile文件: FROM ubuntu:latest WORKDIR data…...

Axure动态面板的使用以及示例分享

目录 一. 什么是动态面板 二. 动态面板教程——以轮播图为例 2.1 创建动态面板 2.2 动态面板自适应大小 2.3 重复状态,将图片导入 2.4 添加交互事件——图片切换 2.5 效果展示 三. 多方式登录示例展示 四. 后台主界面左侧菜单栏示例展示 一. 什么是动态面板…...

容斥原理的并

文章目录 简介AcWing 890. 能被整除的数思路解析CODE 简介 推荐题解:https://www.acwing.com/solution/content/126553/ 画了图,清晰易懂,懒得打字了。 总之就是以下公式: S S 1 S 2 S 3 − S 1 ∩ S 2 − S 1 ∩ S 3 − S 2 …...

JavaSE第7篇:封装

文章目录 一、封装1、好处:2、使用 二、四种权限修饰符三、构造器1、作用2、说明3、属性赋值的过程 一、封装 封装就是将类的属性私有化,提供公有的方法访问私有属性 不对外暴露打的私有的方法 单例模式 1、好处: 1.只能通过规定的方法来访问数据 2.隐藏类的实例细节,方便…...

mysql数据库相关知识【MYSQL】

mysql数据库相关知识【MYSQL】 一. 库1.1 登录数据库管理系统1.2 什么是数据库1.2.1 mysqld与mysql 1.3 编码集和校验集1.3.1 什么是编码集和校验集1.3.2 查看库对应的编码集和校验集1.3.3 用指定的编码集和校验集 1.4 库的操作 一. 库 1.1 登录数据库管理系统 这个算是第一个…...

android studio 创建按钮项目

1&#xff09;、新建一个empty activity项目&#xff0c;切换到project视图&#xff1a; 2&#xff09;、修改app\src\main\res\layout\activity_main.xml文件&#xff0c;修改后如下&#xff1a; <?xml version"1.0" encoding"utf-8"?> <andr…...

gitee提交代码步骤介绍(含git环境搭建)

1、gitee官网地址 https://gitee.com; 2、Windows中安装git环境 参考博客&#xff1a;《Windows中安装Git软件和TortoiseGit软件》&#xff1b; 3、设置用户名和密码 这里的用户名和密码就是登录gitee网站的用户名和密码如果设置错误&#xff0c;可以在Windows系统的“凭据管理…...

【MyBatis-Plus】常用的插件介绍(乐观锁、逻辑删除、分页)

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于MyBatis-Plus的相关操作吧 目录 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一.为什么要使用MyBatis-Plus中的插…...

DApp测试网络Ganache本地部署并实现远程连接

文章目录 前言1. 安装Ganache2. 安装cpolar3. 创建公网地址4. 公网访问连接5. 固定公网地址 前言 Ganache 是DApp的测试网络&#xff0c;提供图形化界面&#xff0c;log日志等&#xff1b;智能合约部署时需要连接测试网络。 Ganache 是一个运行在本地测试的网络,通过结合cpol…...

好用的硬盘分区工具,傲梅分区助手 V10.2

傲梅分区助手软件可以帮助用户在硬盘上创建、调整、合并、删除分区&#xff0c;以及管理磁盘空间等操作。它可以帮助你进行硬盘无损分区操作。 支持系统 目前这款软件支持 Windows 7、Windows 8、Windows 10、Windows 11 等个人系统&#xff0c;还支持 Windows 2012/2016/2019…...

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇

​ &#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 HarmonyOS 4.0 技术介绍&#xff1a; HarmonyOS三大特征&#xff1a; 1.实现硬件互助&#…...

Qt图像处理-Qt中配置OpenCV打开本地图片

本文讲解Qt中配置OpenCV过程并用实例展示如何使用OpenCV打开图片(windows环境下) 一、下载OpenCv 本文使用版本OpenCV-MinGW-Build-OpenCV-3.4.5 下载地址: https://codeload.github.com/huihut/OpenCV-MinGW-Build/zip/refs/heads/OpenCV-3.4.5 点击Code-local-Downlo…...

HTML中RGB颜色表示法和RGBA颜色表示法

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍HTML中RGB颜色表示法和RGBA颜色表示法以及部分理论知识 &#x1f349;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f4dd;私信必回哟&#x1f601; &#x1f349;博主收将持续更新学习记录获&#xff0c;友友们有任何问题可以…...

Openwrt源码下载出现“The remote end hung up unexpected”

最近项目原因需要下载openwrt21.02版本源码&#xff0c;花费了很多时间&#xff0c;找到正确方法后&#xff0c;发现可以节省很多时间&#xff0c;记录下过程&#xff0c;方便自己&#xff0c;可能方便他人。 一.问题阐述 openwrt21.02下载链接如下&#xff1a; git clone -…...

Spring定时任务动态更改(增、删、改)Cron表达式方案实例详解

Spring定时任务动态更改&#xff08;增、删、改&#xff09;Cron表达式方案实例详解 最近在做一个需求&#xff0c;用户可以在平台上配置任务计划数据&#xff08;就是任务的执行和描述的相关信息&#xff0c;包括任务参数、cron表达式&#xff09;&#xff0c;配置后&#xf…...

常用登录加密之Shiro与Spring Security的使用对比

Shiro与Spring Security都是主流的身份认证和权限控制安全框架&#xff0c;Shiro偏向于前后端不分离平台&#xff0c;而Spring Security更偏向于前后端分离平台。接下来简单列一下两种登录验证的执行流程和示例&#xff0c;了解实际运用中的登录执行流程&#xff0c;然后重点剖…...

获取文件路径里的文件名(不包含扩展名)

“./abc/abc/llf.jpg” 写一个代码&#xff0c;让我获得“llf”这段字符串 import osfile_path "./abc/abc/llf.jpg" file_name os.path.splitext(os.path.basename(file_path))[0] print(file_name)在这个代码中&#xff0c;我们使用了os.path模块来处理文件路径…...

HiveSql语法优化二 :join算法

Hive拥有多种join算法&#xff0c;包括Common Join&#xff0c;Map Join&#xff0c;Bucket Map Join&#xff0c;Sort Merge Buckt Map Join等&#xff0c;下面对每种join算法做简要说明&#xff1a; Common Join Common Join是Hive中最稳定的join算法&#xff0c;其通过一个M…...

Leetcode—459.重复的子字符串【简单】

2023每日刷题&#xff08;五十九&#xff09; Leetcode—459.重复的子字符串 算法思想 巧解的算法思想 实现代码 从第一个位置开始到s.size()之前&#xff0c;看s字符串是否是ss的子串 class Solution { public:bool repeatedSubstringPattern(string s) {return (s s).fin…...

WarcraftHelper技术方案:游戏兼容性修复工具的现代化适配实践

WarcraftHelper技术方案&#xff1a;游戏兼容性修复工具的现代化适配实践 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 随着Windows操作系统和硬件架…...

Axure RP中文界面完整汉化指南:3分钟免费安装全系列版本

Axure RP中文界面完整汉化指南&#xff1a;3分钟免费安装全系列版本 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 对于中文用户…...

国际B2B企业平台表达框架:IBM式重构与ServiceNow式统一执行

如果把国际B2B品牌表达看成一个系统问题&#xff0c;IBM / ServiceNow这组样本可以拆成一套判断框架。它不是讨论文案怎么写&#xff0c;而是讨论输入什么业务条件&#xff0c;输出什么品牌角色、结构和证据链。框架结论&#xff1a;IBM与ServiceNow都服务企业转型&#xff0c;…...

【车辆控制】模糊偏航的扭矩矢量与主动转向控制系统【含Matlab源码 15444期】含报告

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;Matlab领域博客之家&#x1f49e;&…...

2026届毕业生推荐的降重复率助手横评

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 使AI生成内容检测率降低的关键策略是让文本的自然性以及多样性得到增强。其一&#xff0c;别…...

Redis高级数据结构:超越String的Redis世界

Redis高级数据结构&#xff1a;超越String的Redis世界 引言 Redis不仅仅是"一个KV存储"&#xff0c;它提供了丰富的数据结构&#xff0c;是现代应用架构中不可或缺的组件。深入理解Redis的数据结构&#xff0c;能够帮助我们设计出更高效、更优雅的解决方案。本文将…...

AI驱动终端交互:用自然语言指挥命令行的新范式

1. 项目概述&#xff1a;一个AI驱动的终端交互新范式最近在终端工具圈里&#xff0c;一个名为“yai”的项目引起了我的注意。它不是一个简单的命令行美化工具&#xff0c;也不是一个传统的终端复用器。简单来说&#xff0c;yai是一个由 AI 驱动的、旨在彻底改变你与终端交互方式…...

从玩具到工具:Dobot Magician桌面机械臂开箱与Blockly图形化编程初体验

从玩具到工具&#xff1a;Dobot Magician桌面机械臂开箱与Blockly图形化编程初体验 第一次见到Dobot Magician时&#xff0c;它安静地躺在包装箱里&#xff0c;像一件精致的工业艺术品。作为一款定位教育和个人创客市场的桌面级机械臂&#xff0c;它的价格只有工业机械臂的零头…...

5个关键步骤:在PC上部署高性能yuzu Switch模拟器

5个关键步骤&#xff1a;在PC上部署高性能yuzu Switch模拟器 【免费下载链接】yuzu 任天堂 Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu yuzu是一款开源的任天堂Switch模拟器&#xff0c;让玩家能够在Windows、Linux和macOS系统上流畅运行Swi…...

智能体驱动的学术论文自动化展示系统:从PDF到交互式网站与视频

1. 项目概述&#xff1a;从静态PDF到动态学术门户的智能跃迁如果你是一名研究者&#xff0c;或者经常需要阅读学术论文&#xff0c;你一定有过这样的体验&#xff1a;面对一篇动辄几十页、充满复杂公式和图表的PDF文档&#xff0c;想要快速抓住其核心创新点、理解方法细节、甚至…...