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

【总结】爬虫1-requests

爬虫1-requests

1. requests的基本用法

  • requests需要提前导入,才能使用

1.1 请求网络数据:requests.get(请求地址)

response = requests.get('https://cd.zu.ke.com/zufang')

1.2 设置解码方法(罗马的是需要设置 - 一定要在获取请求结果之前设置)

response.encoding = ''

在charset中找

1.3 获取请求结果

1)获取请求结果对应的文本数据 - 爬网页

print(response.text)

2)获取二进制格式的请求结果 - 在下载视频、图片、音频的时候使用

print(response.content)

3)获取请求结果json转换的结果 - json接口

print(response.json())
  • 获取json接口,
    在这里插入图片描述

2. 请求头

2.1 发送请求

  • 添加header:

    1)浏览器伪装(user-agent) : (同一个浏览器每一个网页都一样)

在这里插入图片描述

2)免密登录(cookie):每一个网页的cookie不同,要根据爬取的网站才获取cookie

3)设置代理(proxies

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36','cookie': 'bid=k2ZM8BsMnBw; __yadk_uid=kuYdd9ci7gbp4IGSVFpXep5zJF2xPRLW; __gads=ID=3fa60cbcf3a3e4ac-228404d3a3dc000c:T=1676856096:RT=1676856096:S=ALNI_MZrDlvc4QU_FJ2_YtfAEdogQ3jWSw; ll="118318"; _vwo_uuid_v2=D74D83E5DB96CE49326D9A9162340763F|685d74866267af8e22bb298719a33931; douban-fav-remind=1; ap_v=0,6.0; __gpi=UID=00000bc658cd70cb:T=1676856096:RT=1679901363:S=ALNI_MbfTYZk10fRVgqzDw8mqwHRFVwUvw; __utma=30149280.1255981879.1676856093.1679402814.1679901363.6; __utmc=30149280; __utmz=30149280.1679901363.6.6.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; __utmb=30149280.1.10.1679901363; regpop=1; _pk_ref.100001.4cf6=%5B%22%22%2C%22%22%2C1679901371%2C%22https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DX_nO-Ewoq5IHLBPULTNzAT9xT-5Bb73E8zsn50qOoA3I0Ab4Cjj2kK0YV6rNpxJTImgcJCrIby8H9ewHZa0h6_%26wd%3D%26eqid%3De5e6c09d0000530d00000006642142aa%22%5D; _pk_ses.100001.4cf6=*; __utma=223695111.864103406.1676856093.1679402814.1679901371.6; __utmb=223695111.0.10.1679901371; __utmc=223695111; __utmz=223695111.1679901371.6.6.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; _pk_id.100001.4cf6=64602560a59fdbe5.1676856087.6.1679904212.1679402814.'
}
response = requests.get('https://movie.douban.com/top250', headers=headers)

2.2 获取结果

result = response.text
print(result)

3. 下载图片

3.1 获取网络图片数据

response = requests.get('https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fc-ssl.duitang.com%2Fuploads%2Fitem%2F202004%2F20%2F20200420114430_iqnkz.thumb.1000_0.png&refer=http%3A%2F%2Fc-ssl.duitang.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1682496725&t=ae6c568421a44745ee7bff843e688026')
result = response.content
print(type(result))     # <class 'bytes'>

3.2 保存图片数据到本地文件

with open('files/a.jpg', 'wb') as f:f.write(result)

4. 下载视频

# 下载音频
# 1.获取网络图片数据
response = requests.get(url='https://game.gtimg.cn/images/lol/act/img/vo/choose/1.ogg')
result = response.content
print(type(result))     # <class 'bytes'># 2. 保存图片数据到本地文件
with open('files/b.mp4', 'wb') as f:f.write(result)		 # <class 'bytes'>

2. 保存图片数据到本地文件

with open('files/b.mp4', 'wb') as f:f.write(result)

相关文章:

【总结】爬虫1-requests

爬虫1-requests 1. requests的基本用法 requests需要提前导入&#xff0c;才能使用 1.1 请求网络数据&#xff1a;requests.get(请求地址) response requests.get(https://cd.zu.ke.com/zufang)1.2 设置解码方法&#xff08;罗马的是需要设置 - 一定要在获取请求结果之前设…...

基于springboot实现学生综合成绩测评系统【源码】分享

基于springboot实现学生综合成绩测评系统演示开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包…...

uniapp初体验———uView组件库的使用与钉钉小程序的运行

这周学长给了我一个校企合作的项目&#xff0c;要求是用uniapp开发&#xff0c;最终打包成钉钉小程序&#xff0c;不过我并不会uniapp&#xff0c;也是学了一段时间&#xff0c;开始写项目&#xff0c;中间也遇到过很多问题&#xff0c;比如开发者工具还有如何运行到开发者工具…...

初始Go语言2【标识符与关键字,操作符与表达式,变量、常量、字面量,变量作用域,注释与godoc】

文章目录Go语言基础语法标识符与关键字操作符与表达式变量、常量、字面量变量类型变量声明变量初始化常量字面量变量作用域注释与godoc注释的形式注释的位置go docgodocGo语言基础语法 标识符与关键字 go变量、常量、自定义类型、包、函数的命名方式必须遵循以下规则&#xff…...

Vue计算属性详解

目录 ​编辑 1、什么是计算属性 2、为什么要有计算属性 1. 为什么不是使用模板语法 2. 为什么不是使用method对于复杂逻辑 3. 什么时候要用计算属性 4. 定义计算属性fullName 5. 计算属性的配置项 1、什么是计算属性 写在computed对象中的属性&#xff0c;本质上是…...

rk3568-AD按键驱动调试

rk3568-AD按键驱动调试转载请备注&#xff1a;daisy.skye的博客_CSDN博客-Qt,嵌入式,Linux领域博主dts设备树节点 /rk356x_linux_220118/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi 板级设备树dts /home/scooper/jkD7/20221221/ido_evb3568_v2_android11_sdk/kernel/…...

Docker三剑客之swarm

一、什么是docker swarm Swarm是Docker公司推出的用来管理docker集群的平台&#xff0c;几乎全部用GO语言来完成的开发的&#xff0c;代码开源在https://github.com/docker/swarm&#xff0c; 它是将一群Docker宿主机变成一个单一的虚拟主机&#xff0c;Swarm使用标准的Docker…...

Lucene Solr Elasticsearch三者之间的关系,怎么选?

Lucene简介&#xff1a; Lucene主要用于构建文本搜索应用程序&#xff0c;包括Web搜索引擎、桌面搜索工具和商业应用程序。它提供了诸如单词分析、查询解析、搜索结果排序等功能&#xff0c;可以轻松地在大量文档中快速搜索和查找相关信息。 Lucene具有以下特点&#xff1a; …...

为你的网站加上Loading等待加载效果吧 | Loading页面加载添加教程

为你的网站加上Loading等待加载效果吧 | Loading页面加载添加教程 效果图 : 教程开始 新建一个loading样式css 将以下代码放进去 然后引用这个文件 code #Loadanimation{ background-color:#fff; height:100%; width:100%; position:fixed; z-index:1; ma…...

Redis安装和配置

网上有海量的Redis文章&#xff0c;写的都很详细。这里就是简单记录一下自己查aof问题过程中遇到的问题&#xff0c;主要是aof文件所在目录在redis.conf里的位置 1。在ubuntu16上安装Redis sudo apt-get install -y redis-server 2。修改redis配置 sudo vim /etc/redis/re…...

MobTech|如何使用秒验

什么是秒验&#xff1f; 秒验是MobTech公司提供的一款实现一键验证功能的产品&#xff0c;从根源上降低企业验证成本&#xff0c;有效提高拉新转化率&#xff0c;降低因验证带来的流失率&#xff0c;3秒完成手机号验证&#xff08;一键登录&#xff09;。 秒验主要整合了三大…...

CSS实现自动分页打印同时每页保留重复的自定义内容

当需要打印的内容过长时系统会产生自动分割页面&#xff0c;造成样式不太美观。使用CSS的 media print 结合 <table> 可以实现对分页样式的可控。效果如下&#xff1a; 假设有50条数据&#xff0c;打印时系统会自动分成两页&#xff0c;同时每页保留自定义的header和foo…...

基于prometheus的监控告警怎么实现?

基于 Prometheus 的监控告警实现一般需要以下几个步骤&#xff1a; 安装和配置 Prometheus&#xff1a;安装 Prometheus 并配置好需要监控的目标。可以使用 Prometheus 的配置文件&#xff08;prometheus.yml&#xff09;来指定需要监控的目标&#xff0c;例如服务、主机、容器…...

2007年4月全国计算机等级考试二级JAVA笔试试题及答案

2007年4月全国计算机等级考试二级JAVA笔试试题及答案 一、选择题 &#xff08;1&#xff09;已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF&#xff0c;则该二叉树的后序遍历为 A&#xff0e;GEDHFBCA B&#xff0e;DGEBHFCA C&#xff0e;ABCDEFGH D&#xff0e;…...

灌水玩玩 ChatGPT AIGC生成的有栈协同程序实现(例子)

CO&#xff1a; 你是一名 C/C 高级软件工程师。 请使用 stackful 协程&#xff0c;实现一个 Sleep 随眠的协同程序&#xff0c;注意并非 stackless 协程&#xff0c;不允许使用 C/C 17 以上的语言标准实现&#xff0c;允许使用 boost 基础框架类库。 ChatGPT&#xff1a; 好的…...

【砝码称重】暴力DFS(一半分)+ dp(可AC)

题目描述&#xff1a; 题目分析&#xff1a; 我也没有完全搞太明白&#xff0c;简单说说我的理解 1.dp【i】【j】表示前 i 个砝码&#xff0c;是否可以称出来重量为 j 的物品&#xff0c;如果可以的话&#xff0c;值为1&#xff0c;不可以 为0&#xff1b; 2.针对当前第 i 个…...

科大奥瑞物理实验——霍尔效应实验

实验名称&#xff1a;霍尔效应实验 1. 实验目的&#xff1a; 了解霍尔效应测量磁场的原理和方法&#xff1b;观察磁电效应现象&#xff1b;学会用霍尔元件测量磁场及元件参数的基本方法。 2. 实验器材&#xff1a; QS-H型霍尔效应实验仪 磁针 QS-H型霍尔效应测试仪 双刀开关…...

2023_深入学习HTML5

H5 基于html5和 css3和一部分JS API 结合的开发平台(环境) 语义化标签 header : 表示头部&#xff0c;块级元素 footer &#xff1a; 表示底部&#xff0c;块级元素 section &#xff1a;区块 nav &#xff1a; 表示导航链接 aside &#xff1a; 表示侧边栏 output &am…...

Apache iotdb-web-workbench 认证绕过漏洞(CVE-2023-24829)

漏洞简介 ​​ 影响版本 0.13.0 < 漏洞版本 < 0.13.3 漏洞主要来自于 iotdb-web-workbench​ IoTDB-Workbench是IoTDB的可视化管理工具&#xff0c;可对IoTDB的数据进行增删改查、权限控制等&#xff0c;简化IoTDB的使用及学习成本。iotdb-web-workbench​ 中存在不正…...

【7-1】Redis急速入门与复习

文章目录1、分布式架构概述本阶段规划什么是分布式架构单体架构与分布式架构 对比分布式架构优点分布式架构缺点设计原则2、为何引入Redis现有架构的弊端3、什么是NoSql&#xff1f;NoSqlNoSql优点NoSql常见分类4、什么是分布式缓存&#xff0c;什么是Redis&#xff1f;什么是分…...

宝塔面板如何定期清理日志垃圾_设置计划任务自动清理

...

基于LangChain构建AI智能体:从核心架构到生产部署实战

1. 项目概述与核心价值最近在GitHub上看到一个名为“GenAI_Agents”的项目&#xff0c;作者是NirDiamant。这个项目名本身就很有意思&#xff0c;它直指当前AI领域最火热、也最具想象力的方向之一&#xff1a;智能体&#xff08;Agents&#xff09;。简单来说&#xff0c;这个项…...

【电动车】基于粒子群算法模拟光伏的电动车充电站(电池健康状况通过CRF、ECL和SoH来量化)附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。&#x1f34e;完整代码获取 定制创新 论文复现点击&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和数学建模资料 &#x1f3…...

考研高数救星:用Python的SymPy库5分钟搞定洛必达法则极限题

考研高数救星&#xff1a;用Python的SymPy库5分钟搞定洛必达法则极限题 数学分析中&#xff0c;洛必达法则堪称求解极限问题的"瑞士军刀"&#xff0c;尤其对于0/0型和∞/∞型未定式。但传统手工求解往往需要反复求导验证&#xff0c;既耗时又容易出错。如今&#xff…...

顶伯知识竞赛系统 · 核心功能列表

&#x1f680; 顶伯知识竞赛系统 核心功能列表专业 高效 让知识竞赛组织更简单&#x1f3af; 核心优势速览⏱️ 高效&#xff1a;传统方式2-3天的准备工作&#xff0c;2-3小时完成&#x1f3af; 精准&#xff1a;系统自动计分、自动判定抢答&#xff0c;零误差&#x1f3a8;…...

Dify聊天应用嵌入式集成实战:从iframe通信到安全部署

1. 项目概述与核心价值最近在折腾一个智能对话应用&#xff0c;想把它的核心能力无缝嵌入到自己的网站或者移动端App里&#xff0c;而不是让用户跳转到一个独立的Web页面。这个需求其实挺普遍的&#xff0c;无论是想给自家产品增加一个智能客服入口&#xff0c;还是想打造一个集…...

解决Matlab硬件支持包安装失败:手把手教你手动部署Autosar工具链

解决Matlab硬件支持包安装失败&#xff1a;手把手教你手动部署Autosar工具链 当你在Matlab Add-On管理器中反复尝试安装Autosar支持包却遭遇网络超时、许可证报错或进度条卡死时&#xff0c;手动部署方案往往能成为突破困境的终极手段。不同于常规的图形化安装流程&#xff0c…...

ChatGPT支付功能现状深度研判(2024Q2最新政策+OpenAI开发者文档交叉验证)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ChatGPT实时支付功能在哪里 ChatGPT 本身并不原生支持实时支付功能。OpenAI 官方发布的 ChatGPT&#xff08;包括免费版、Plus 订阅版及 Team/Enterprise 版&#xff09;定位为人工智能对话助手&#x…...

基于MCP协议构建AI支付网关:连接Clawd与智能体的实践指南

1. 项目概述&#xff1a;一个连接Clawd与MCP的支付网关 最近在折腾一个很有意思的开源项目&#xff0c;叫 clawdpay-mcp 。这个项目在GitHub上由 Rishab87 维护&#xff0c;乍一看名字有点拗口&#xff0c;但拆解一下就能明白它的核心价值&#xff1a; clawdpay 和 M…...

MDX-M3-Viewer深度解析:浏览器端游戏模型渲染的全新范式

MDX-M3-Viewer深度解析&#xff1a;浏览器端游戏模型渲染的全新范式 【免费下载链接】mdx-m3-viewer A WebGL viewer for MDX and M3 files used by the games Warcraft 3 and Starcraft 2 respectively. 项目地址: https://gitcode.com/gh_mirrors/md/mdx-m3-viewer 在…...