在请求中传递标头的效果?

2023-12-07

我想知道当你传递标题时会有什么不同requests.get即之间的差异requests.get(url, headers) and requests.get(url).

我有这两段代码:

from lxml import html
from lxml import etree
import requests
import re

url = "http://www.amazon.in/SanDisk-micro-USB-connector-OTG-enabled-Android/dp/B00RBGYGMO"

page = requests.get(url)
tree = html.fromstring(page.text)
XPATH_IMAGE_SOURCE = '//*[@id="main-image-container"]//img/@src'
image_source = tree.xpath(XPATH_IMAGE_SOURCE)
print 'type: ',type(image_source[0])
print image_source[0]

正如您所期望的,它的输出是一个 url。但是这个:

from lxml import html
from lxml import etree
import requests
import re

url = "http://www.amazon.in/SanDisk-micro-USB-connector-OTG-enabled-Android/dp/B00RBGYGMO"
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36'}
page = requests.get(url, headers=headers)

tree = html.fromstring(page.text)
XPATH_IMAGE_SOURCE = '//*[@id="main-image-container"]//img/@src'
image_source = tree.xpath(XPATH_IMAGE_SOURCE)
print 'type: ',type(image_source[0])
print image_source[0]

有一个以开头的输出data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAoHBwgHBgoIC我猜这是没有渲染的实际图像,只是纯数据。知道如何将其保留为 url 形式吗?标头的存在还会以哪些其他方式影响我们得到的响应?

谢谢


Save the first code's response to html file and open in your browser: enter image description here

正如你所看到的,你被亚马逊禁止没有标题。

使用这个xpath:

XPATH_IMAGE_SOURCE = '//*[@id="main-image-container"]//img/@data-old-hires'

out:

type:  <class 'lxml.etree._ElementStringResult'>
http://ecx.images-amazon.com/images/I/617TjMIouyL._SL1274_.jpg

这是原始的 html 数据:

<img alt=".." src="&#10;data:image/webp;base64,UklGRuYIAABXRUJQVlA4INoIAACQQQCdASosAcsAPrFWpEqkIqQhIxN6gIgWCek6r4bUf/..." 
data-old-hires="http://ecx.images-amazon.com/images/I/617TjMIouyL._SL1274_.jpg"

图片网址在data-old-hires属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在请求中传递标头的效果? 的相关文章

  • for 循环如何评估其参数

    我的问题很简单 Does a for循环评估它每次使用的参数 Such as for i in range 300 python 是否会为此循环的每次迭代创建一个包含 300 个项目的列表 如果是的话 这是避免这种情况的方法吗 lst ra
  • Android:将图像裁剪为特定尺寸

    我的目的是让用户从图库中选择一张图像 然后进行裁剪活动 但是 我需要将定义裁剪蒙版的矩形锁定到某个尺寸 然后用户只需重新定位它即可显示图像的一部分 关于如何做到这一点有什么想法吗 Thanks T Intent intent new Int
  • 在 tlistbox 中绘制缩略图

    在 DelphiXE 中 我使用 tFileOpenDialog 选择一个文件夹 然后在 tListBox 中列出该文件夹中的所有 jpg 文件 我允许将列表项拖放到列表中进行自定义排序 以便稍后按顺序显示它们 我希望能够在文件名旁边绘制图
  • 了解 Python 中的酸洗

    我最近接到一项作业 需要以腌制形式放置一本字典 其中每个键引用一个列表 唯一的问题是我不知道腌制形式是什么 谁能给我指出一些好的资源的正确方向来帮助我学习这个概念 pickle 模块实现了一个基本但强大的算法 用于序列化和反序列化 Pyth
  • 如何在启用抗锯齿的情况下旋转可绘制对象

    我需要将 ImageView 旋转几度 我通过子类化 ImageView 和重载来做到这一点onDraw Override protected void onDraw Canvas canvas canvas save canvas sca
  • 从 URL 任何文件类型创建图像

    我知道imagecreatefromgif https www php net manual en function imagecreatefromgif php imagecreatefromjpeg https www php net
  • Python 通过从现有 csv 文件中过滤选定的行来写入新的 csv 文件

    只是一个问题 我试图将 csv 文件中的选定行写入新的 csv 文件 但出现错误 我试图读取的 test csv 文件是这样的 两列 2013 9 1 2013 10 2 2013 11 3 2013 12 4 2014 1 5 2014
  • 如何创建具有“可悬停”区域的图像,以在 jQuery 或 HTML5 中显示附加信息

    我正在尝试创建一些我认为在 jQuery 或 HTML5 中应该很简单的东西 但我很难找到它的资源 如果有人可以提供帮助 我们将不胜感激 目标 我有一张包含 16 个可悬停部分的图像 该图像的其他部分是完全静态的 如果用户将鼠标悬停在预定义
  • 如何使用 PHP 从 MSSQL 读取图像字段

    我正在创建一个网站 需要同步从离线 MSSQL 服务器读取的在线 MySQL 数据库 除图像字段外 所有通信和从 MSSQL 读取所有字段均工作正常 我已经使用 PHP 和 Mysql 一段时间了 知道如何向 MySQL 数据库插入 检索图
  • conda 和 pip 根本不工作

    我使用的是 OS X 10 11 2 Anaconda Python 2 7 10 我正在安装一些依赖项 突然间 我的conda命令开始根本不起作用 很多人建议conda install python 2 7 10但是当我尝试 或任何命令
  • 使用 pyppeteer 与 asyncio 关联来抓取内容

    我用 python 结合编写了一个脚本pyppeteer随着asyncio从其登陆页面抓取不同帖子的链接 并最终通过跟踪通向其内页的 url 来获取每个帖子的标题 我这里解析的内容不是动态的 但是 我利用了pyppeteer and asy
  • 获取输入图像类型选择的图片并加载到图像标签中

    所以 我有一个用于上传 img 文件的输入框 我想要做的是从该数据 或选定的源 中获取数据并将其路由到图像标签的 src 属性中 像这样的东西 http jsfiddle net QC2c4 http jsfiddle net QC2c4
  • 如何使用python登录页面,该页面需要服务器在第一次请求时响应会话ID?

    我正在编写一个脚本来登录某个网页 我使用 request 和 request session 模块来实现此目的 在使用登录参数的第一个请求时 服务器响应一个会话 ID 如何设置该会话 ID 以进一步登录到同一页面 url some url
  • Json.dump 失败并显示“必须是 unicode,而不是 str”TypeError

    我有一个 json 文件 其中恰好有大量中文和日文 以及其他语言 字符 我将其加载到我的 python 2 7 脚本中使用io open如下 with io open multiIdName json encoding utf 8 as j
  • 将透明PNG图像转换为透明JPEG或透明GIF [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我有一个透明的 PNG 图像 我想将其添加为水印this http www bsrsoft com 视频录制软件 但问题是 软件需要jpeg图像作为水
  • 使用 python/scapy 迭代 pcap 文件数据包

    我想使用 python scapy 迭代 pcap 文件包 该文件有多个协议 当前迭代是特定于协议的 因此如果下一个数据包来自另一个协议 则迭代会 跳转 我不知道为什么现在会变成这样 我想要一个数据包一个数据包 无论什么协议 小例子 dat
  • 调整离子卡中的图像大小

    我想显示一组图像 并在下面说明 我选择使用 Ionic 卡 我得到这个结果 第一张图片 虽然我想保留现在的相同布局 并添加描述 这是我的代码
  • 设置缩略图内容类型

    我需要设置Content Type对于缩略图 我已经尝试如下所示 但它不起作用 仍然 它存储为流 天青功能 索引 json var Jimp require jimp module exports context myBlob gt Rea
  • 如何移动图像(动画)?

    我正在尝试在 x 轴上移动船 还没有键盘 我如何将运动 动画与boat png而不是任何其他图像 public class Mama extends Applet implements Runnable int width height i
  • 图像创建从jpeg() PHP

    我正在使用 imagecreatefromjpeg 函数合并两张图片 现在我面临的问题是 当我使用服务器中的图片时 它工作正常 而当我使用其他网站的图片时 它不起作用 例如 当我使用这个 PHP 文件时http coolfbapps in

随机推荐

  • JavaScript 中的 PMT

    我正在尝试编写与 EXCEL PMT 函数等效的代码 在 JavaScript 中 公式如下所示 function PMT ir np pv fv ir interest rate per month np number of period
  • nextTriggerDate() 不返回“预期”值,是否有其他方法来获取重复本地通知的下一个触发日期?

    在我的应用程序中 我允许用户安排重复的本地通知 我遇到的问题 基于环顾四周的任何其他问题 是 nextTriggerDate 始终将其返回值基于当前时间而不是安排通知的时间 我看到了在通知的 userInfo 中存储 日期 值的建议 但从通
  • ASP.NET Core 2.0 MVC - 如何从视图编译中排除某些文件夹?

    这是场景 我使用这段代码https iamrufio com 2017 09 08 rendering emails with razorviewengine in net core 2 0 感谢作者 将视图呈现为字符串 用于电子邮件 但是
  • 为什么 Borland 会在不同的 C 文件中使用同一对象的多个定义进行编译,而 GCC 却不会?

    我正在研究全局变量的行为 到目前为止 我认为全局变量的多重定义是一种非法的方式 并且必须得到一个错误 但是我从 Borland C C 编译器得到了意想不到的结果 而 GCC 给了我预期的结果 Code test1 c include
  • 为什么 FirebaseAuth.getInstance().getCurrentUser() 在 android 中返回 null 值

    我正在关注使用firebase发送图像的代码 我已经配置了 firebase 存储 url 数据库 url 数据库规则 true sha1 将 google services json 放置在应用程序文件夹中 但是当我调试代码时 it 用户
  • Apache Airflow 仅向列表中的第一个人发送 SLA 未命中电子邮件

    我使用 Apache Airflow 我希望它能够在 SLA 未命中时发送电子邮件通知 我将电子邮件地址存储为气流变量 并且我有一个 dag 其任务之一使用 EmailOperator 发送电子邮件 问题来了 因为当我向所有收件人运行发送邮
  • 如何在 geo URI Intent 启动的地图中显示标记?

    我有一个应用程序 我想通过启动具有特定地理坐标的 Google 地图来显示不同的位置 一次一个 由用户输入选择 我目前正在使用这个 当然具有真实的纬度和经度值 Intent intent new Intent Intent ACTION V
  • 如何为每个列名添加后缀(或前缀)?

    我想添加 x每个列名称的后缀 如下所示 featuresA myPandasDataFrame columns values x 我该怎么做呢 另外 如果我想添加x 作为后缀 解决方案会如何变化 以下是我认为添加后缀的最好方法 df df
  • 与菜单元素中的右“左三角形”对齐

    我构建 HTML CSS JS 菜单 并希望将箭头向右对齐以指出该元素是子菜单 我的问题是 在 Firefox 中 三角形 符号 显示在下一行而不是当前行 铬在两种情况下都表现良好 BTS中存在与我的情况类似的错误 https bugzil
  • JAI:如何从多页 TIFF 图像容器中提取单页输入流?

    我有一个将 PDF 文档转换为图像的组件 每页一张图像 由于该组件使用转换器生成内存中图像 因此它会对 JVM 堆造成严重影响 并且需要一些时间才能完成转换 我正在尝试提高转换过程的整体性能 并找到了一个具有 JNI 绑定的本机库来将 PD
  • jQuery CSS 悬停

    我有一个 CSS 菜单 当鼠标悬停在它上面时设置父 li 的颜色 它是子 ul 子菜单 基本上 当您将鼠标悬停在菜单上时 它会改变颜色并保持这种状态 直到您将鼠标移开菜单及其子菜单 看起来很好 我添加了一些 jQuery 代码来更改菜单项的
  • 如何让一个视图知道另一个视图的变化?

    假设您正在制作一个音乐库应用程序 您有一个包含流派列表的视图 另一个显示所选流派的内容 当用户单击列表上的流派时 其他视图中的内容应相应更新 为了最大限度地减少依赖性 最好的方法是什么 除了绘制各个流派的视图之外 我还没有找到任何其他地方可
  • Java数组的克隆方法

    Java 中的 clone 方法在数组上使用时到底返回什么 它是否返回一个新数组 其中包含从原始数组复制的数据 Ex int a 1 2 3 int b a clone 当 的时候clone方法在数组上调用 它返回对新数组的引用 该新数组包
  • 如何找到 PIE 二进制文件的加载重定位?

    我需要获取正在运行的进程中堆栈的基地址 这将使我能够打印 addr2line 可以理解的原始堆栈跟踪 运行的二进制文件被剥离 但 addr2line 可以访问符号 我设法通过检查 elf header 来做到这一点argv 0 我读取入口点
  • Rails 进程的互斥体

    通过 Passenger 或 Mongrel 部署 Rails 时 您会运行多个应用程序实例 在共享资源上建立互斥锁的最佳实践或模式是什么 例如写入本地文件或远程文件 我想确保两个进程不会同时写入同一资源 如果您只是需要防止多个编写者同时处
  • ASP.NET 中的带宽监控

    您好 我们正在 Asp Net 中开发一个多租户应用程序 每个租户都有单独的数据库 其中要求之一是监视每个租户的带宽使用情况 我尝试搜索 但没有找到有关该主题的太多帮助 我们希望准确监控每个租户使用了多少带宽 而每个租户可以拥有自己的顶级域
  • 在循环/foreach MVC 视图中动态生成表

    我现在正在编写一些非常糟糕的代码 在保存之前 我希望得到一些关于改进它的意见 我正在尝试构建一个每行三个单元格的 html 表格 如果集合有 5 个项目 则应呈现为两行 到目前为止我所写的代码不是很健壮 需要不断维护 但我不确定是否有其他工
  • PHP 脚本未在浏览器上运行

    我已经在我的系统上安装了 XAMPP 服务器以便能够使用 PHP 但是安装后 当我在浏览器上运行任何 php 脚本时 它不会运行 我没有看到任何输出 没有从本地主机检查 phpinfo 我看到版本 5 3 5 已安装 即使运行一个简单的 p
  • 正则表达式如何在任何地方排除特定字符或字符串[重复]

    这个问题在这里已经有答案了 the cat sat on the mat 假设这些是不同的条目 从您要搜索的内容中的任何位置排除特定字符 在本例中为 a 的正则表达式是什么 所以你会得到的点击是 the on the 或者如果它是一个单词
  • 在请求中传递标头的效果?

    我想知道当你传递标题时会有什么不同requests get即之间的差异requests get url headers and requests get url 我有这两段代码 from lxml import html from lxml