-
python requests html格式图片打不开_Python 使用 requests_html 爬取豆瓣刘亦菲照片
2020-12-08 11:30:52需要大量女神照片, 于是嘿嘿嘿豆瓣刘亦菲主页, 呦西~2000多张, 刺激哦安装所需要的库pip install requests_html二话不多说, 直接get一波from requests_html import HTMLSessionsess = HTMLSession()url = ...最近要做一些羞羞的事情, 需要大量女神照片, 于是嘿嘿嘿
豆瓣刘亦菲主页, 呦西~2000多张, 刺激哦
安装所需要的库
pip install requests_html
二话不多说, 直接get一波
from requests_html import HTMLSession
sess = HTMLSession()
url = "https://movie.douban.com/celebrity/1049732/photos/"
resp = sess.get(url)
print(resp.text)
代码输出
刘亦菲照片页面
在控制台找到图片对应的元素标签
图片对应的元素标签
根据标签拿到所有第一页的所有图片超链接
from requests_html import HTMLSession
sess = HTMLSession()
url = "https://movie.douban.com/celebrity/1049732/photos/"
resp = sess.get(url)
# 查找页面内class属性为cover的div
divs = resp.html.find('div.cover')
for div in divs:
# 就算只有一个元素依然返回的是列表
img = div.find('img')[0]
print(img.attrs['src'])
查找第一页中所有图片地址
试着打开其中一个地址, 结果虽然是可以看到图片, 但貌似清晰度差了一点.... 高清大图需要登录才能看到... 试了下简单加个headers好像不行...so~~悲伤~~
我们先点进去一张图片看看清晰点的图片地址是啥样子的
# 清晰版
https://img3.doubanio.com/view/photo/l/public/p752033902.webp
# 模糊版
https://img1.doubanio.com/view/photo/m/public/p1204312987.jpg
第一反应是webp格式问题, 但是把模糊版换成webp后依然不够清晰
再次仔细看了下, 发现其中l和m的区别....难不成是衣服尺码??????
那我试试xl... 这年头不偏个科下个图片都麻烦xl和m的对比
ok, 到这一步就已经基本大功告成了, 其实我们第一步只需要拿到图片的名字就行, 按照名字再去拼接下载地址, 那怎么下载一张图片呢?
so ~~ 简单~~, 注意这里图片文件打开的模式为wb+, 是要以二进制格式写入文件的
from requests_html import HTMLSession
sess = HTMLSession()
url = "https://img1.doubanio.com/view/photo/m/public/p1204312987.jpg"
resp = sess.get(url)
path = './img.jpg'
with open(path, mode='wb+') as f:
f.write(resp.content)
至于分页的处理, 依次打开几个页面查看规律
第一页
https://movie.douban.com/celebrity/1049732/photos/
第二页
https://movie.douban.com/celebrity/1049732/photos/?type=C&start=30&sortby=like&size=a&subtype=a
第三页
https://movie.douban.com/celebrity/1049732/photos/?type=C&start=60&sortby=like&size=a&subtype=a
基本确定通过参数start控制分页数据
完整代码如下:
1, 通过循环遍历所有照片页面
2, 将每个页面中的图片名称保存在一个列表中
3, 遍历名称列表, 下载图片
from requests_html import HTMLSession
sess = HTMLSession()
def get_names(url):
resp = sess.get(url)
# 查找页面内class属性为cover的div
divs = resp.html.find('div.cover')
names = []
for div in divs:
# 就算只有一个元素依然返回的是列表
img = div.find('img')[0]
src = img.attrs['src']
names.append(src.split('/')[-1])
return names
def main():
image_names = []
for i in range(70):
url = f"https://movie.douban.com/celebrity/1049732/photos/?type=C&start={30 * i}&sortby=like&size=a&subtype=a"
image_names += get_names(url)
print(len(image_names))
for name in image_names:
url = f"https://img1.doubanio.com/view/photo/xl/public/{name}"
resp = sess.get(url)
with open(f'./image/刘亦菲/{name}', mode='wb+') as f:
f.write(resp.content)
main()
感觉大部分图片清晰度依然不够...
基本上应该能用了, 感觉还是用搜索引擎找到的图片质量更好点....
-
uniapp 解压缩之后打不开解决办法
2020-12-28 11:55:19解决方式:dist/icon/index.wxss 和 icon/index.vue 中的url前面要加空格(多个url 两个页面格式化一下就好了) 2、问题描述:uniapp结合vant weapp使用,编译时报错:TypeError: Cannot read property ‘split’ of...1.项目 解压缩之后最外层多了一层文件夹 hbuderx识别为web文件而不是uniapp文件
uniapp结合vant weapp使用,编译时报错:(36:193) Unclosed bracket
解决方式:dist/icon/index.wxss 和 icon/index.vue 中的url前面要加空格(多个url 两个页面格式化一下就好了)
2、问题描述:uniapp结合vant weapp使用,编译时报错:TypeError: Cannot read property ‘split’ of undefined
解决方式:dist/common/version.js 中return compareVersion(system.SDKVersion, '2.9.0') >= 0;
改为
return system.SDKVersion==undefined?false:compareVersion(system.SDKVersion, '2.4.0') >= 0;
-
android 利用android:scheme 打不开app或者app打开失败的处理
2016-05-12 17:53:27首先先确定是否按照如上格式来做的,action 味view categoty方式为默认和浏览器两种; 第二确认好scheme过滤对象是否是自己需要的,比如我的是myapp; 第三,很重要,这花了我一天时间:请不要用自己写的webview去...<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="myapp" /> </intent-filter>
首先先确定是否按照如上格式来做的,action 味view categoty方式为默认和浏览器两种;
第二确认好scheme过滤对象是否是自己需要的,比如我的是myapp;
第三,很重要,这花了我一天时间:请不要用自己写的webview去加载页面测试,一定要用浏览器去测!而且最好是让后端做一个界面,点击某个超链接按钮跳转Scheme_Url,反正我直接在本地浏览器输入url是没有反应的。
第四,
<intent-filter>建议单独使用,不要和其他filter混用,否则无效。
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter>
以上,此问题必然能解决。
-
vue 解决 post请求下载文件,下载的文件损坏打不开,结果乱码
2021-03-17 18:30:36responseType: 'blob' //指定返回数据的格式为blob }) .then(response => { console.log(response);//把response打出来,看下图 let url = window.URL.createObjectURL(response.data); console.log(url) ...axios.post('path', {key: ''}, { responseType: 'blob' //指定返回数据的格式为blob }) .then(response => { console.log(response);//把response打出来,看下图 let url = window.URL.createObjectURL(response.data); console.log(url) var a = document.createElement("a"); document.body.appendChild(a); a.href = url; a.download = '2.xls'; a.click(); window.URL.revokeObjectURL(url); }) .catch(err => { console.log(`接口调用失败`); console.log(err); })
现象:
1。postman请求下载文件正常
2。js代码在别的项目中下载正常
3。js代码在本项目中下载的excel打开提示文件损坏。
原因:
项目中前期引入了 mockjs 进行模拟数据请求。导致请求结果被mock拦截,修改了返回数据类型。
下面是mock拦截修改后的返回对象,data变成string类型,显示为乱码。返回的请求为MockXMLHttpRequest类型
注释到 mockjs的引用后,data类型为正常的blob类型
结果发现,
1.谷歌浏览器下载,office打不开。
2.QQ浏览器谷歌内核下载,postman下载,office打开提示修复,点击确定,正常显示数据。
3.谷歌浏览器下载,wps正常打开,也没有修复提示。经过分析,是后台返回的数据流里面带有接口请求状态等信息,让后台去掉后就正常了。
-
eclipse打不开图片,在家里就可以,到学校就不行了,用浏览器可以打开。
2019-12-17 11:17:26* 用于加载图片为Image格式 */ public class GameUtile { public static Image getImage(String path) { URL url=GameUtile.class.getClassLoader().getResource(path); BufferedImage image=null; ... -
java base64转图片打不开_java图片转base64和真实的结果不一样
2021-03-08 05:04:27你这个问题我今天遇到,排查了一上午,最后发现图片url请求返回的数据是gzip格式,在base64编码前要gzip解码,再进行base64编码。浏览器上看到的返回头信息Age:2829Connection:keep-aliveContent-Encoding:... -
js 使用预签名(presigned) url 上传文件到 AWS S3服务(解决生成的文件格式错误问题)
2019-03-16 18:17:42但是上传成功后,从CDN上下载下来的文件打不开,而且只有前端有这个问题,客户端可以正常上传,一开始以为是框架问题,而且亚马逊官方也没有直接上传相关的文档(都是使用SDK的方式上传),所以问题很难定位,后来在... -
String字符串转换成json格式并打印json数据。
2017-09-04 07:38:34执行到150行的时候,不抱错,也没有执行后面的语句,我想请教大神String转json格式然后存储到本地数据库,有什么办法。 package sql_conn; import java.awt.EventQueue; import java.awt.event.ActionEvent; ... -
IE浏览器图片不显示,报DOM7009: 无法解码 URL 处的图像问题的解决方法
2018-08-02 20:36:48今天做网页的时候发现一张图片在IE上打不开,刚开始我以为是图片路径问题。如下图所示: 尝试别的浏览器如:Firefox和Chrome等都可以正常显示。经过查阅资料得知原因:使用PS软件对PSD图像切片后,比如... -
地址转向时候 IIS不支持html格式解决办法
2019-09-27 05:18:51今天在做一个网站的时候。进行URL重写操作。结果出现了两个让人意想不到的事情。。真是头疼 第一个到现在还没有结果呢。。也不知道具体是什么原因 ...重写成about.html和contact.html就是打不开。。提示该页无... -
爬取信息在network 里面搜到一个文件 不知道什么格式
2019-04-21 22:16:34![图片说明]... 找到这个文件,看response应该是json文件,如何获取这段文件里面的内容。另外浏览器打不开这个文件的url。不知道对于这种文件应该如何提取response里面的信息。 -
url 微信公众号开发 配置失效_微信公众号开发者中心配置 Token验证失败 终极解决方案...
2020-12-21 14:11:07把您开发者设置的URL页面,用NotPad++打开,转为UTF-8无BOM编码格式。前面的乱码应该是在文件有BOM的原因。2. 注意输出echostr的前后都不能有任何的页面输出。3. 您的网站域名要经过备案合法的4.如果url链... -
ios WebView 打开docx 改名后的doc错误的解决办法
2018-05-17 10:58:03用下面这种常用的方式打开会有问题,改格式后的文件打不开NSURL * url = [NSURL fileURLWithPath:self.localPath];NSURLRequest *request = [NSURLRequest requestWithURL:url];[self.webView loadRequest: request]... -
SVN操作手册中文版网页格式
2017-11-08 12:10:59针对打不开chm格式的网友 转换后为网页格式的操作手册中文版> 目录 译者序 前言 序言 读者 怎样阅读本书 本书约定 排版习惯 图标 本书组织结构 Subversion 1.1的新特性,svn客户端和linux下命令行。 目录 1. 简介 ... -
Glide显示图片失败,浏览器能打开
2020-05-09 15:30:57奇了怪了,浏览器能打开的图片,为什么Glide显示失败呢? ...后台给的格式是String类型的,多张图片已逗号分割的形式,逗号就逗号嘛,逗号后面多个空格在给图片URL,这样人咋搞呀,好了,一个.trim -
JS调用快递鸟组件实现电子面单打印功能.zip
2020-08-05 17:38:37根据官网电子面单API接口要求,按要求封装JSON格式,然后传到URL:http://api.kdniao.com/api/EOrderService 注:打印电子面单需要保存接口返回来的HTML数据, 请求参数 IsReturnPrintTemplate:1(返回电子面单模板... -
关于针对IE浏览器打印解决弹窗的解决办法。
2017-06-02 07:39:35下面即可开干: js代码如下: //直接打印 $(".print").click(function(){ //预先选中的纸张 var strDefaultPaper = 'A4'; String.prototype.trim = function () { return this.replace(/(^\s*)... -
波开条形码生成器Java控件 V4.0
2006-10-24 13:35:01它可以用作服务器元件,能够在WEB服务器(如配Tomcat的Apache)上,即使在不启动图像模式(graphics mode,即X-Window)的状态下,动态地生成PNG或JPEG格式的条形码图像(barcode image)。您不需要写程序,就可以通过... -
万能阅读器软件力求解决常用文件的打开问题,万能是我们的软件努力的方向。
2008-11-10 15:19:14当你碰到万能文件查看器打不开的文件时,请将文件发送至 45333663@qq.com ,我们将尽力解决,力争将软件做得更完美。 注:本软件收录一些文件打开软件,如原作者认为不应该出现在本软件中,请联系 45333663@qq.com。 ... -
同样的请求img代码,单个html文件和项目中的html文件请求结果不一样
2015-02-10 15:38:00今天遇到一个问题: 同样的请求img服务器image代码,单个html文件(显示正常)和项目中的html文件(显示不正常)请求结果不一样 直接访问img的url提示下载,...防盗链没通过,直接返回的json格式,单个文件直接打... -
使用labview的http协议post 和get ,带解析
2021-01-12 16:49:501.网页打不开的post不了,不存在的属性post不了,属性不区分大小写 2.post模式下内容格式要对,=赋值不能少 3.get模式下url=不能少 4.header 200表示响应成功,post 的内容要用web services readpostdata,两个VI... -
Failed to resolve hostname 192: The name does not resolve for the supplied parameters
2019-06-25 17:14:15ffmpeg打开流时,报错,url打印出来没有问题,但是在ffmpeg中乱码了。 Failed to resolve hostname 192: The ...初步猜测是html传输url,可能编码格式不一样,导致的乱码。 原因: int byte_url(int cam_id,... -
Ext结合my97在各浏览器里表现不一致
2009-12-06 17:13:34不是广告的URL[url]www.my97.net[/url] (今天好像打不开~ :oops: ) 这可能是EXT的问题. 经小弟测试, [color=blue]my97结合HTML的时候,在各个浏览器表现一致.[/color] 当用ext结合my97的时候, 问题来了... ... -
跪求高手帮忙看下程序为什么android连接不到servlet上,谢谢大家了
2013-12-27 07:08:07* 设置发送字符串的编码格式 */ connection.setRequestProperty("Conten-Type", "text/xml;charset=UTF-8"); /** * 通过IO流的方式发送数据给服务器 */ OutputStream ... -
js生成word中图片处理方法
2020-11-27 09:18:51图片是以链接形式存到word中,这样如果是需要vpn的网站就会存在生成的word在没有vpn的情况下打不开,有vpn的情况下必须启用编辑才能加载出来图片。 解决办法:将图片转换成Data URL格式,再导出。 详细代码如下所示... -
js实现word生成书签_js生成word中图片处理方法
2020-12-19 03:00:14导出文字都是没有问题的(jquery.wordexport.js),但是导出图片就存在问题了:图片是以链接形式存到word中,这样如果是需要vpn的网站就会存在生成的word在没有vpn的情况下打不开,有vpn的情况下必须启用编辑才能加载... -
VisitorPass Print & Close-crx插件
2021-03-24 03:59:35我们需要能够关闭选项卡以将用户返回到另一个URL。 但是,我们无法知道ADOBE PDF已完成打印。 因此,我们立即将用户转移到另一个选项卡,然后在足够长的时间间隔内关闭“打印选项卡”,以便知道应该完成打印。 这是... -
X Chen笔记---Centos升级git版本
2018-04-12 16:17:20原文链接:https://segmentfault.com/a/1190000004563172有时候使用git命令拉取镜像的时候会失败,除去镜像网址本身就打不开这种情况,很大可能是因为git版本太低。这时候就需要升级git版本。报错格式大体如下:操作... -
Java Postman测试请求Base64附件传输的接口
2020-07-03 16:37:08记base64传输过程以及出现问题 传输数据以json格式,如下 1.问题,接收是url的值,是以键值对形式存在的,导致...5.注意转码时需要把多余的换行去除,否则还原的附件会损坏打不开。 6.至此再次请求成功!!! ...