假期小结7爬虫学习requests
这周我初步学习了py爬虫的相关知识,以下是我的部分总结
URL headers(URL头部)是HTTP请求中包含的一部分信息,用于描述、控制和传递请求的各种元数据。它们是位于HTTP请求消息的起始部分,用于传递与请求相关的附加信息。以下是一些常见的URL headers参数和其他参数的解释:
User-Agent(用户代理):User-Agent头部是请求中的一个参数,用于标识发送请求的客户端应用程序或浏览器的身份。服务器可以使用User-Agent来判断如何处理请求和返回适用于特定客户端的响应。
Accept(接受类型):Accept头部指定客户端可以接受的响应内容类型(如HTML、XML、JSON等)。服务器可以根据Accept头部来选择适当的响应类型。
Authorization(授权信息):Authorization头部用于在请求中提供身份验证凭证,通常用于需要访问权限的资源。这可以是基本认证(Base64编码的用户名和密码)或其他类型的令牌或密钥。
Referer(引用来源):Referer头部包含了发送当前请求的URL来源。它可以用于记录日志、追踪请求链路和防止恶意行为。有些网站可能会检查Referer来防止盗链或限制访问。
除了URL headers,还有其他一些常见的参数,如:
Query Parameters(查询参数):这些参数是通过在URL中使用问号(?)和键值对的方式传递给服务器的。例如,
http://example.com/search?q=keyword中的q=keyword即是查询参数。Path Parameters(路径参数):这些参数是通过URL路径中的占位符形式进行传递的。例如,
http://example.com/users/{id}中的id即是路径参数,可以替换为具体的值。Request Body(请求体):在某些情况下,参数可能需要以请求体的形式发送,特别是对于POST、PUT等请求。请求体可以包含多种格式的数据,如表单数据、JSON、XML等。
这些参数和头部信息可以根据具体的请求目的和服务端的要求进行设置和传递。在进行爬虫开发时,了解和正确设置这些参数和头部信息对于模拟请求并获取相应数据非常重要,同时也需要遵守网站的使用规则和服务条款,确保爬取的合法性和可靠性。
requests.get()是使用Python中的requests库发起HTTP GET请求的函数。它接受一些可选的参数,用于配置请求的各个方面。以下是requests.get()函数中一些常用的相关参数:
url(必需):要发送GET请求的目标URL。params(可选):一个字典或字符串,用于指定URL中的查询参数。例如,params={'key': 'value'}会将查询参数添加到URL中,形如http://example.com?key=value。headers(可选):一个字典,用于设置HTTP请求的头部信息,包括User-Agent、Accept等。常用于模拟特定的请求头部。timeout(可选):设定请求的超时时间,以秒为单位。如果在指定的时间内没有得到响应,将引发requests.exceptions.Timeout异常。proxies(可选):一个字典,用于设置请求的代理。可以指定HTTP或HTTPS代理,格式如{'http': 'http://proxy.example.com', 'https': 'https://proxy.example.com'}。verify(可选):指定是否验证服务器的SSL证书。默认情况下为True,会验证证书的有效性。当请求的网站使用自签名证书或无效证书时,可以将其设置为False。allow_redirects(可选):指定是否允许重定向。默认情况下为True,即允许自动处理重定向。如果设置为False,则禁止自动处理重定向。auth(可选):用于指定身份验证凭证的元组。例如,auth=('username', 'password')可用于基本身份验证。
这些参数只是requests.get()函数中的一部分,还有其他可用参数,如cookies用于发送请求时附带的cookie信息,stream用于获取响应时启用流式传输,等等。
假期小结7爬虫学习requests的更多相关文章
- Python学习---爬虫学习[requests模块]180411
模块安装 安装requests模块 pip3 install requests 安装beautifulsoup4模块 [更多参考]https://blog.csdn.net/sunhuaqiang1/ ...
- 爬虫学习--Requests库详解 Day2
什么是Requests Requests是用python语言编写,基于urllib,采用Apache2 licensed开源协议的HTTP库,它比urllib更加方便,可以节约我们大量的工作,完全满足 ...
- python爬虫学习 —— 总目录
开篇 作为一个C党,接触python之后学习了爬虫. 和AC算法题的快感类似,从网络上爬取各种数据也很有意思. 准备写一系列文章,整理一下学习历程,也给后来者提供一点便利. 我是目录 听说你叫爬虫 - ...
- python爬虫学习笔记
爬虫的分类 1.通用爬虫:通用爬虫是搜索引擎(Baidu.Google.Yahoo等)“抓取系统”的重要组成部分.主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份. 简单来讲就是尽可 ...
- python爬虫学习笔记(一)——环境配置(windows系统)
在进行python爬虫学习前,需要进行如下准备工作: python3+pip官方配置 1.Anaconda(推荐,包括python和相关库) [推荐地址:清华镜像] https://mirrors ...
- 网络请求 爬虫学习笔记 一 requsets 模块的使用 get请求和post请求初识别,代理,session 和ssl证书
前情提要: 为了养家糊口,为了爱与正义,为了世界和平, 从新学习一个爬虫技术,做一个爬虫学习博客记录 学习内容来自各大网站,网课,博客. 如果觉得食用不良,你来打我啊 requsets 个人觉得系统自 ...
- 孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块
孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块 (完整学习过程屏幕记录视频地址在文末) 从今天起开始正式学习Python的爬虫. 今天已经初步了解了两个主要的模块: ...
- python爬虫学习01--电子书爬取
python爬虫学习01--电子书爬取 1.获取网页信息 import requests #导入requests库 ''' 获取网页信息 ''' if __name__ == '__main__': ...
- python爬虫学习05-爬取图片
python爬虫学习05-爬取图片 确定要爬取的网址:https://shenan.tuchong.com/20903415/#image309854686 要爬取的内容:使用浏览器插件xpath对图 ...
- Python爬虫练习(requests模块)
Python爬虫练习(requests模块) 关注公众号"轻松学编程"了解更多. 一.使用正则表达式解析页面和提取数据 1.爬取动态数据(js格式) 爬取http://fund.e ...
随机推荐
- Fluter 编译第一个iOS应用
一.流程说明 1)fluter是一个跨平台UI库,可以一份界面代码在iOS和Android上面运行 2)在Mac上面安装Fluter的环境,相对比较简单,通过简单的命令行可以设置环境 3)可以使用特定 ...
- java中判断String类型为空和null的方法
1.判断一个String类型的变量是否为空(即长度为0)或者为null 在Java中,判断一个String类型的变量是否为空(即长度为0)或者为null,通常需要使用两个条件语句来进行检查.这是因为n ...
- 算法金 | 一文读懂K均值(K-Means)聚类算法
大侠幸会,在下全网同名[算法金] 0 基础转 AI 上岸,多个算法赛 Top [日更万日,让更多人享受智能乐趣] 1. 引言 数据分析中聚类算法的作用 在数据分析中,聚类算法用于发现数据集中的固有分 ...
- C#.NET 不可见字符DEL
不可见字符DEL .空格.替换掉. 签名时遇到了客户端发过来的数据包含一个DEL.Notepad++ 里显示为DEL. 包含这个字符签名给上游,就会报错:签名错误. 得想办法replace掉.目前方案 ...
- 1. Elasticsearch 入门安装与部署
引言 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java语言开发的,并作为 ...
- 在线RSA公私钥PKCS格式互转工具
在线公私钥PKCS格式转换,支持公钥PKCS1与PKCS8格式之间相互转换,私钥PKCS1与PKCS8格式之间相互转换:PKCS1定义RSA公开密钥算法加密和签名机制,PKCS8描述私有密钥信息格式, ...
- 这个vue3的后台管理系统虽然简洁但不简单
今天介绍一个新的Vue后台管理框架,相比其他后台功能丰富管理系统,这个后台管理系统可以用干净简洁来形容--Nova-admin Nova-admin Nova-admin 是一个基于Vue3.Vite ...
- 什么是浅拷贝和深拷贝,如何用 js 代码实现?
〇.简介和对比 简介 浅拷贝:只复制原始对象的第一层属性值. 如果属性值是值类型,将直接复制值,本值和副本变更互不影响: 如果是引用数据类型,则复制内存地址,因此原始对象和新对象的属性指向相同 ...
- hdfs修复块
磁盘满了一次,导致hdfs的很多块变成一个副本 看一下副本信息 执行 hdfs fsck / 1007个块少于3个副本一下 而且 hbase的regionsever启动报错 File /apps/h ...
- .NET使用原生方法实现文件压缩和解压
前言 在.NET中实现文件或文件目录压缩和解压可以通过多种方式来完成,包括使用原生方法(System.IO.Compression命名空间中的类)和第三方库(如:SharpZipLib.SharpCo ...