Selenium爬虫 -- 图片视频的src绝对地址链接分析

news/2024/10/23 9:21:45/

爬取**的时候,每次爬取图片都要转到mbasic.**网站,这样极容易被检测封号。

然后我发现在检查页面的元素的时候,图片和视频的链接都藏在了元素的style属性中。

思路:

定位多媒体元素  ->  获取src属性  ->  截取http网址  ->  对网址进行分析替换  ->  爬取多媒体资源

网址中有些反复出现的\3a、\3d、\26等字符串,猜测可能是连接符之类的保密替换。

查询资料发现是网址URL中的特殊字符转义编码。

对照表:

字符 - URL编码值
空格 - %20
"    - %22
#    - %23
%    - %25
&    - %26
(    - %28
)    - %29
+    - %2B
,    - %2C
/    - %2F
:    - %3A
;    - %3B
<    - %3C
=    - %3D
>    - %3E
?    - %3F
@    - %40
\    - %5C
|    - %7C

获取到保密的资源地址后,将这些字符替换,得到真正的网址。

pic = article.find_element_by_xpath('./div/div/i')
thepicstyle = pic.get_attribute('style')
picsrc = thepicstyle[thepicstyle.find('background-image: url(\'')+23:thepicstyle.find('\');background-repeat')]
picsrc = picsrc.replace('\\3a ', ':')
picsrc = picsrc.replace('\\3d ', '=')
picsrc = picsrc.replace('\\26 ', '&')

拿这个网址去下载和访问图片就可以了,甚至不需要科学上网!


http://www.ppmy.cn/news/857002.html

相关文章

论前端开发的红颜知己-------饿了么UI

对于PC端开发的码农来看&#xff0c;这个组件库一定是耳熟能详了&#xff0c;以下总结了一下开发中常用的技巧&#xff0c;未来还会持续添加&#xff0c;期待----- 1.element.ui中的el-upload传递索引 index是外部v-for循环时的索引&#xff1b; :on-success的回调函数原本有三…

jquery图片放大镜代码

<script type="text/javascript" src="${path}/front/js/jquery-1.8.3.min.js"></script><script type="text/javascript">$(function(){//图片放大镜$(".imagess").mouseover(function(event){//获取新的图片var b…

ASP.NET 多/单 图片上传

前端暂时用layer框架&#xff1a; <% Page Language"C#" AutoEventWireup"true" CodeFile"Default.aspx.cs" Inherits"_Default" %><!DOCTYPE html><html xmlns"http://www.w3.org/1999/xhtml"> <hea…

IOS 如何获取与修改图片的EXIF信息

简介&#xff1a;Exif是一种图像文件格式&#xff0c;它的数据存储与JPEG格式是完全相同的。实际上Exif格式就是在JPEG格式头部插入了数码照片的信息&#xff0c;包括拍摄时的光圈、快门、白平衡、ISO、焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制…

图片和多行文本垂直居中

图片和多行文本垂直居中 代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta name"keywords" content"zidingyi"><meta name"keywords" content"zidingyi"><meta charset&qu…

Python数据处理 - 查看海量图片

目标检测模型在测试集上做推理的时候,有时会是几十万张的规模,这样就没办法用文件资源管理器打开,会卡死,只能用程序一张张打开查看效果。 import matplotlib.pyplot as plt # plt 用于显示图片 import matplotlib.image as mpimg # mpimg 用于读取图片 import numpy as np imp…

html做一张图片的分割动画,图片制作影视动画的出入点分割|图形视频处理软件 ae图层时间控制...

大家好&#xff0c;我是小编Aeolus 中文笔名和微信号‘烽火台上戏红颜’大家可以关注一下这个微信公众号每天都有不一样的教程。我们接着昨天的图形视频处理软件如何进行图层设置继续&#xff0c;今天我们来讲图片制作影视动画的出入点分割及图层的时间控制。这个也是一个很重要…

微信小程序webview页面下载图片

1.在html页面中引入微信JSSDK与html2canvas.js 文件下载位置&#xff1a; 微信JSSDK html2canvas.js <head runat"server"><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><script src"/utils/html2…